C4716: 'v8::ArrayBuffer::Allocator::Reserve': must return a value
nodejs
version v8.0.0
build from source (TODAY) from main web page (https://nodejs.org/en/download/current/)
platform: build with VS2015, x64, Win7
In main source from webpage.
This file, dep/v8/src/api.cc

this method (1) should return 'something' (2), it is not void.
so VS2015-> compile error -> semantic check error.
I compare the source from the original main web (3) (https://github.com/nodejs/node/blob/master/deps/v8/src/api.cc#L440)
and the source on github. It has a little diff.
UNIMPLEMENTED() just crashes, there鈥檚 no point in returning anything; can you show the actual error that you get from compiling?

This is the only one error when I build it.

To pass that, I fix it by adding return nullptr;
I confirm this happens in debug builds.
Still not fixed in NodeJS v 8.1.0 (main source from webpage)

As far as I understand, this is an issue with V8 sources, and thus should be reported in their issue tracker, shouldn't it?
@aqrln,
But the error is 'included' in nodejs's official source snapshot from nodejs's main page.
I think we should patch it before release to other node users (that build from src).
for me, I'm not hurry :)
But I've never see this (err) before in the official node source.
:)
But the error is 'included' in nodejs's official source snapshot from nodejs's main page.
We take everything in deps/ from the maintainers of those projects, and we try not to float patches unless necessary. So in this case nodejs/node deps/v8/src/api.cc#L436 corresponds to v8/v8 src/api.cc#L452.
So assuming that this is a V8 issue (and that it's not something special we're doing in Node) the way to get it fixed is to raise it upstream.
As far as I understand, this is an issue with V8 sources, and thus should be reported in their issue tracker, shouldn't it?
Just so you know, this is a temporary situation; these methods will become pure virtual at some point in the (possibly near) future.
Anyway, here鈥檚 an upstream patch: https://codereview.chromium.org/2929993003/
It happens only in Debug builds because in Release it is suppressed by whole program optimization. When building V8 by itself function level linking is enabled and it also suppress this.
Adding the exact error message so the issue is searchable: C4716: 'v8::ArrayBuffer::Allocator::Reserve': must return a value
Most helpful comment
Just so you know, this is a temporary situation; these methods will become pure virtual at some point in the (possibly near) future.
Anyway, here鈥檚 an upstream patch: https://codereview.chromium.org/2929993003/