Node 22.22.2 does not build without -DV8_SHARED_RO_HEAP anymore
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 122k
- Forks
- 37.3k
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 283
Description
Version
22.22.2
Platform
FreeBSD factory-amd64 15.0-STABLE FreeBSD 15.0-STABLE amd64
Subsystem
No response
What steps will reproduce the bug?
Try to build node 22.22.2 without V8_SHARED_RO_HEAP (./configure --disable-shared-readonly-heap).
Building node 22.22.1 (before https://github.com/nodejs/node/commit/e3f4d6a42ece2643746761fd585d8e86c78ff711) is working fine.
How often does it reproduce? Is there a required condition?
Everytime you omit "-DV8_SHARED_RO_HEAP" flag.
What is the expected behavior? Why is that the expected behavior?
./configure --disable-shared-readonly-heap $REST_OF_CONFIG_FLAGS should work.
Successfully build ast-value-factory.o.
What do you see instead?
../deps/v8/src/ast/ast-value-factory.cc:86:66: error: too few arguments to function call, single argument 'object' was not specified
86 | raw_hash_field_, HashSeed(ReadOnlyHeap::GetReadOnlyRoots()));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
../deps/v8/src/heap/read-only-heap-inl.h:29:29: note: 'GetReadOnlyRoots' declared here
29 | ReadOnlyRoots ReadOnlyHeap::GetReadOnlyRoots(Tagged<HeapObject> object) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
gmake[2]: *** [tools/v8_gypfiles/v8_base_without_compiler.target.mk:1060: /wrkdirs/usr/ports/databases/mongosh/work/boxednode/mongosh/node-v22.22.2/out/Release/obj.target/v8_base_without_compiler/deps/v8/src/ast/ast-value-factory.o] Error 1
Additional information
Due to this commit:
deps/v8/src/ast/ast-value-factory.cc
https://github.com/nodejs/node/commit/e3f4d6a42ece2643746761fd585d8e86c78ff711#diff-de0e218f45b6aaea5a8dbf16b77ff82747642ad89cd7f4c84341a46dc5f8c2e3R85-R86
deps/v8/src/heap/read-only-heap-inl.h
https://github.com/nodejs/node/commit/e3f4d6a42ece2643746761fd585d8e86c78ff711#diff-0cacd7b4ec67ce10f0c6a7d78ff6ea42e33c9bfaff40dd4111d24a64528a337bR29-R38
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with deps/v8/src/ast/ast-value-factory.cc around the ReadOnlyHeap::GetReadOnlyRoots call and compare it with deps/v8/src/heap/read-only-heap-inl.h. Reproduce using ./configure --disable-shared-readonly-heap on FreeBSD, then build Node with that configuration. Done means ast-value-factory.o and the full Node build succeed without V8_SHARED_RO_HEAP.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, nodejs
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100