api: Make sure TracedReference never is a zap value

When checks are enabled, ensure that the global handle zap value never
leaks into user code as it indicates that the garbage collector failed
to keep alive an object.

Bug: chromium:1056170
Change-Id: I4836fe49cd6e443d689068af10276ed99b46eb10
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2972729
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Dominik Inf├╝hr <dinfuehr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75330}
2 files changed
tree: 3e6fa34a7cc480513fbfbd084deb4f213f83571b
  1. .bazelrc
  2. .clang-format
  3. .clang-tidy
  4. .editorconfig
  5. .flake8
  6. .git-blame-ignore-revs
  7. .gitattributes
  8. .github/
  9. .gitignore
  10. .gn
  11. .mailmap
  12. .vpython
  13. .ycm_extra_conf.py
  14. AUTHORS
  15. BUILD.bazel
  16. BUILD.gn
  17. CODE_OF_CONDUCT.md
  18. COMMON_OWNERS
  19. DEPS
  20. DIR_METADATA
  21. ENG_REVIEW_OWNERS
  22. INFRA_OWNERS
  23. INTL_OWNERS
  24. LICENSE
  25. LICENSE.fdlibm
  26. LICENSE.strongtalk
  27. LICENSE.v8
  28. MIPS_OWNERS
  29. OWNERS
  30. PPC_OWNERS
  31. PRESUBMIT.py
  32. README.md
  33. RISCV_OWNERS
  34. S390_OWNERS
  35. WATCHLISTS
  36. WORKSPACE
  37. bazel/
  38. build_overrides/
  39. codereview.settings
  40. custom_deps/
  41. docs/
  42. gni/
  43. include/
  44. infra/
  45. samples/
  46. src/
  47. test/
  48. testing/
  49. third_party/
  50. tools/
README.md

V8 JavaScript Engine

V8 is Google's open source JavaScript engine.

V8 implements ECMAScript as specified in ECMA-262.

V8 is written in C++ and is used in Google Chrome, the open source browser from Google.

V8 can run standalone, or can be embedded into any C++ application.

V8 Project page: https://v8.dev/docs

Getting the Code

Checkout depot tools, and run

    fetch v8

This will checkout V8 into the directory v8 and fetch all of its dependencies. To stay up to date, run

    git pull origin
    gclient sync

For fetching all branches, add the following into your remote configuration in .git/config:

    fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*
    fetch = +refs/tags/*:refs/tags/*

Contributing

Please follow the instructions mentioned at v8.dev/docs/contribute.