RFR: 8369186: HotSpot Style Guide should permit some uses of the C++ Standard Library [v2]

Kim Barrett kbarrett at openjdk.org
Thu Oct 9 04:07:02 UTC 2025


> Please review this change to the HotSpot Style Guide to suggest that C++
> Standard Library components may be used, after appropriate vetting and
> discussion, rather than just a blanket "no, don't use it" with a few very
> narrow exceptions. It provides some guidance on that vetting process and
> the criteria to use, along with usage patterns.
> 
> In particular, it proposes that Standard Library headers should not be
> included directly, but instead through HotSpot-provided wrapper headers. This
> gives us a place to document usage, provide workarounds for platform issues in
> a single place, and so on.
> 
> Such wrapper headers are provided by this PR for `<cstddef>`, `<limits>`, and
> `<type_traits>`, along with updates to use them. I have a separate change for
> `<new>` that I plan to propose later, under JDK-8369187. There will be
> additional followups for other C compatibility headers besides `<cstddef>`.
> 
> This PR also cleans up some nomenclature issues around forbid vs exclude and
> the like.
> 
> Testing: mach5 tier1-5, GHA sanity tests

Kim Barrett has updated the pull request incrementally with two additional commits since the last revision:

 - jrose comments
 - move tuple to undecided category

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/27601/files
  - new: https://git.openjdk.org/jdk/pull/27601/files/98e7ccbb..c886ec36

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

  Stats: 78 lines in 2 files changed: 55 ins; 8 del; 15 mod
  Patch: https://git.openjdk.org/jdk/pull/27601.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27601/head:pull/27601

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


More information about the hotspot-dev mailing list