Michaël Zasso
Michaël Zasso
I think V8 built fine. There's an error in `env.cc`: ``` FAILED: obj/src/libnode.env.o c++ -MMD -MF obj/src/libnode.env.o.d -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -D_GLIBCXX_USE_CXX11_ABI=1 -DNODE_OPENSSL_CONF_NAME=nodejs_conf -DNODE_OPENSSL_HAS_QUIC -D_DARWIN_USE_64_BIT_INODE=1 -DOPENSSL_NO_PINSHARED -DOPENSSL_THREADS '-DNODE_ARCH="arm64"' -DNODE_WANT_INTERNALS=1 -DV8_DEPRECATION_WARNINGS=1 '-DNODE_OPENSSL_SYSTEM_CERT_PATH=""' -DNODE_USE_NODE_CODE_CACHE=1...
> I see a lot of `[-Wambiguous-reversed-operator]` in ICU. If I understand https://unicode-org.atlassian.net/browse/ICU-22014 correctly, we need to build ICU with `-Wno-ambiguous-reversed-operator`.
GCC 8 and 9 expect `-std=gnu++2a`
> Most platforms build passed. MSVC comes no surprise, v8 failed on MSVC. > > ``` > 15:01:24 C:\workspace\node-compile-windows\node\deps\v8\src\handles\handles.h(143,37): error C2027: use of undefined type 'v8::internal::Object' [C:\workspace\node-compile-windows\node\tools\v8_gypfiles\v8_base_without_compiler.vcxproj] > ``` See...
Windows build failure on both vs2019 and vs2022: ``` D:\a\node\node\src\node_threadsafe_cow-inl.h(10,14): error C2039: 'unique': is not a member of 'std::shared_ptr' [D:\a\node\node\libnode.vcxproj] ``` @nodejs/cpp-reviewers On vs2019 only: ``` D:\a\node\node\deps\v8\src\handles\handles.h(145,37): error C2027: use...
Interesting new MSVC error: ``` D:\a\node\node\deps\v8\src\compiler\turboshaft\optimization-phase.h(25): fatal error C1075: '{': no matching token found [D:\a\node\node\tools\v8_gypfiles\v8_compiler.vcxproj] ```
> Ha, msvc gets confused by the `namespace foo::bar {` syntax. That's a C++17-ism. > > You can fix it by breaking it up into `namespace foo { namespace bar...
~This is related to precompiled headers. If I remove v8_pch.h from the arguments passed to cl.exe, the error disappears.~ edit: I'm not sure anymore...
I was able to reduce a reproduction to one preprocessed file, but it's big (14 MiB, too big for godbolt): ``` PS D:\Git\nodejs\node\tools\v8_gypfiles> & 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\bin\HostX64\x64\CL.exe' /c /Z7...
Another version of the file without the empty lines: ``` > & 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\bin\HostX64\x64\CL.exe' /c /Z7 /nologo /W3 /WX- /diagnostics:column /MP /O2 /Ob2 /Oi /Oy /GF /Gm- /MT...