Version
16.14.2
Platform
Linux simon-linuxdesktop 5.6.14-050614-generic #202005200733 SMP Wed May 20 07:38:05 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Subsystem
No response
What steps will reproduce the bug?
Reproduce: attempt to build node with debug and asan enabled: ./configure --debug --enable-asan && make -j4
Same issue on ubuntu 22.04 and 20.04, and with gcc/g++ 9 and 11.
How often does it reproduce? Is there a required condition?
Every time
What is the expected behavior?
No response
What do you see instead?
...
g++ -o /home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/default-worker-threads-task-runner.o ../deps/v8/src/libplatform/default-worker-threads-task-runner.cc '-D_GLIBCXX_USE_CXX11_ABI=1' '-DV8_GYP_BUILD' '-DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64' '-DLEAK_SANITIZER' '-DV8_USE_ADDRESS_SANITIZER' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DV8_TARGET_ARCH_X64' '-DV8_HAVE_TARGET_OS' '-DV8_TARGET_OS_LINUX' '-DV8_EMBEDDER_STRING="-node.20"' '-DENABLE_DISASSEMBLER' '-DV8_PROMISE_INTERNAL_FIELD_COUNT=1' '-DENABLE_MINOR_MC' '-DOBJECT_PRINT' '-DV8_INTL_SUPPORT' '-DV8_ATOMIC_OBJECT_FIELD_WRITES' '-DV8_ATOMIC_MARKING_STATE' '-DV8_ENABLE_LAZY_SOURCE_POSITIONS' '-DV8_USE_SIPHASH' '-DDISABLE_UNTRUSTED_CODE_MITIGATIONS' '-DV8_WIN64_UNWINDING_INFO' '-DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH' '-DV8_SNAPSHOT_COMPRESSION' '-DV8_ENABLE_WEBASSEMBLY' '-DV8_ALLOCATION_FOLDING' '-DV8_ALLOCATION_SITE_TRACKING' '-DV8_ADVANCED_BIGINT_ALGORITHMS' -I../deps/v8 -I../deps/v8/include -fno-omit-frame-pointer -fsanitize=address -fsanitize-address-use-after-scope -pthread -Wno-unused-parameter -m64 -Wno-return-type -fno-strict-aliasing -m64 -fno-omit-frame-pointer -fdata-sections -ffunction-sections -O2 -fno-rtti -fno-exceptions -std=gnu++14 -MMD -MF /home/simon/dev/vendor/node/out/Release/.deps//home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/default-worker-threads-task-runner.o.d.raw -c
In file included from ../deps/v8/src/libplatform/default-platform.cc:14:
../deps/v8/src/base/platform/platform.h: In static member function ‘static v8::base::Stack::StackSlot v8::base::Stack::GetRealStackAddressForSlot(v8::base::Stack::StackSlot)’:
../deps/v8/src/base/platform/platform.h:477:16: error: operands to ?: have different types ‘char*’ and ‘v8::base::Stack::StackSlot’
476 | return real_frame
| ~~~~~~~~~~
477 | ? (static_cast<char*>(real_frame) + kAsanRealFrameOffsetBytes)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
478 | : slot;
| ~~~~~~
../deps/v8/src/base/platform/platform.h:478:18: error: conversion from ‘v8::base::Stack::StackSlot’ to ‘char*’ is ambiguous
478 | : slot;
| ^~~~
../deps/v8/src/base/platform/platform.h:450:5: note: candidate: ‘v8::base::Stack::StackSlot::operator void*() const’ <near match>
450 | operator void*() const { return reinterpret_cast<void*>(value); }
| ^~~~~~~~
../deps/v8/src/base/platform/platform.h:450:5: note: no known conversion from ‘void*’ to ‘char*’
../deps/v8/src/base/platform/platform.h:451:5: note: candidate: ‘v8::base::Stack::StackSlot::operator uintptr_t() const’ <near match>
451 | operator uintptr_t() const { return value; } // NOLINT
| ^~~~~~~~
../deps/v8/src/base/platform/platform.h:451:5: note: no known conversion from ‘uintptr_t’ {aka ‘long unsigned int’} to ‘char*’
In file included from ../deps/v8/src/libplatform/default-worker-threads-task-runner.h:14,
from ../deps/v8/src/libplatform/default-worker-threads-task-runner.cc:5:
../deps/v8/src/base/platform/platform.h: In static member function ‘static v8::base::Stack::StackSlot v8::base::Stack::GetRealStackAddressForSlot(v8::base::Stack::StackSlot)’:
../deps/v8/src/base/platform/platform.h:477:16: error: operands to ?: have different types ‘char*’ and ‘v8::base::Stack::StackSlot’
476 | return real_frame
| ~~~~~~~~~~
477 | ? (static_cast<char*>(real_frame) + kAsanRealFrameOffsetBytes)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
478 | : slot;
| ~~~~~~
../deps/v8/src/base/platform/platform.h:478:18: error: conversion from ‘v8::base::Stack::StackSlot’ to ‘char*’ is ambiguous
478 | : slot;
| ^~~~
../deps/v8/src/base/platform/platform.h:450:5: note: candidate: ‘v8::base::Stack::StackSlot::operator void*() const’ <near match>
450 | operator void*() const { return reinterpret_cast<void*>(value); }
| ^~~~~~~~
../deps/v8/src/base/platform/platform.h:450:5: note: no known conversion from ‘void*’ to ‘char*’
../deps/v8/src/base/platform/platform.h:451:5: note: candidate: ‘v8::base::Stack::StackSlot::operator uintptr_t() const’ <near match>
451 | operator uintptr_t() const { return value; } // NOLINT
| ^~~~~~~~
../deps/v8/src/base/platform/platform.h:451:5: note: no known conversion from ‘uintptr_t’ {aka ‘long unsigned int’} to ‘char*’
g++ -o /home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/delayed-task-queue.o ../deps/v8/src/libplatform/delayed-task-queue.cc '-D_GLIBCXX_USE_CXX11_ABI=1' '-DV8_GYP_BUILD' '-DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64' '-DLEAK_SANITIZER' '-DV8_USE_ADDRESS_SANITIZER' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DV8_TARGET_ARCH_X64' '-DV8_HAVE_TARGET_OS' '-DV8_TARGET_OS_LINUX' '-DV8_EMBEDDER_STRING="-node.20"' '-DENABLE_DISASSEMBLER' '-DV8_PROMISE_INTERNAL_FIELD_COUNT=1' '-DENABLE_MINOR_MC' '-DOBJECT_PRINT' '-DV8_INTL_SUPPORT' '-DV8_ATOMIC_OBJECT_FIELD_WRITES' '-DV8_ATOMIC_MARKING_STATE' '-DV8_ENABLE_LAZY_SOURCE_POSITIONS' '-DV8_USE_SIPHASH' '-DDISABLE_UNTRUSTED_CODE_MITIGATIONS' '-DV8_WIN64_UNWINDING_INFO' '-DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH' '-DV8_SNAPSHOT_COMPRESSION' '-DV8_ENABLE_WEBASSEMBLY' '-DV8_ALLOCATION_FOLDING' '-DV8_ALLOCATION_SITE_TRACKING' '-DV8_ADVANCED_BIGINT_ALGORITHMS' -I../deps/v8 -I../deps/v8/include -fno-omit-frame-pointer -fsanitize=address -fsanitize-address-use-after-scope -pthread -Wno-unused-parameter -m64 -Wno-return-type -fno-strict-aliasing -m64 -fno-omit-frame-pointer -fdata-sections -ffunction-sections -O2 -fno-rtti -fno-exceptions -std=gnu++14 -MMD -MF /home/simon/dev/vendor/node/out/Release/.deps//home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/delayed-task-queue.o.d.raw -c
make[1]: *** [tools/v8_gypfiles/v8_libplatform.target.mk:158: /home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/default-worker-threads-task-runner.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [tools/v8_gypfiles/v8_libplatform.target.mk:158: /home/simon/dev/vendor/node/out/Release/obj.target/v8_libplatform/deps/v8/src/libplatform/default-platform.o] Error 1
rm c811dc5233a4a706afbbaa1b86deb16c3131dc34.intermediate
make: *** [Makefile:113: node] Error 2
Additional information
No response
Version
16.14.2
Platform
Linux simon-linuxdesktop 5.6.14-050614-generic #202005200733 SMP Wed May 20 07:38:05 UTC 2020 x86_64 x86_64 x86_64 GNU/LinuxSubsystem
No response
What steps will reproduce the bug?
Reproduce: attempt to build node with debug and asan enabled:
./configure --debug --enable-asan && make -j4Same issue on ubuntu 22.04 and 20.04, and with gcc/g++ 9 and 11.
How often does it reproduce? Is there a required condition?
Every time
What is the expected behavior?
No response
What do you see instead?
Additional information
No response