RFR: 8369187: Add wrapper for <new> that forbids use of global allocation and deallocation functions [v2]

Kim Barrett kbarrett at openjdk.org
Thu Nov 13 05:58:25 UTC 2025


> 8369187: Add wrapper for <new> that forbids use of global allocation and deallocation functions
> 
> Please review this change that adds `cppstdlib/new.hpp` as a wrapper for
> including `<new>`. All existing inclusions of `<new>` are changed to include
> the new wrapper.
> 
> In additional to including `<new>`, this wrapper also provides deprecation
> declarations to prevent the use of some facilities by HotSpot code.
> 
> However, those deprecations need to be conditionalized to not apply to gtests,
> so this change also adds a macro definition provided by the build system for
> use in detecting that a header is being included by a gtest.
> 
> Testing: mach5 tier1

Kim Barrett has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:

 - Merge branch 'master' into wrap-stdlib-new
 - further conditionalize deprecation of hardare interference sizes
 - add wrapper for <new>

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/28250/files
  - new: https://git.openjdk.org/jdk/pull/28250/files/103f7c2b..11c088e1

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=28250&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=28250&range=00-01

  Stats: 6550 lines in 64 files changed: 2791 ins; 3375 del; 384 mod
  Patch: https://git.openjdk.org/jdk/pull/28250.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28250/head:pull/28250

PR: https://git.openjdk.org/jdk/pull/28250


More information about the build-dev mailing list