RFR: 8352645: Add tool support to check order of includes
Doug Simon
dnsimon at openjdk.org
Tue Mar 25 12:13:01 UTC 2025
This PR adds `bin/sort_includes.py`, a python3 script to check that blocks of include statements in C++ files are sorted alphabetically and that there's at least one blank line between user and sys includes (as per the [style guide](https://github.com/openjdk/jdk/blob/master/doc/hotspot-style.md#source-files)).
This script can also update files with unsorted includes. The second commit in this PR shows the result of running:
python3 ./bin/sort_includes.py ./src/hotspot
To prevent an include being reordered, put at least one non-space character after the closing `"` or `>`. See `src/hotspot/share/adlc/archDesc.cpp` for an example.
Assuming this PR is integrated, jcheck could be updated to use it to ensure include statements remain sorted.
-------------
Commit messages:
- do not reorder includes in immediate_aarch64.cpp
- do not reorder includes in systemMemoryBarrier_windows.cpp
- sort include statements in hotspot
- added tool to sort includes
Changes: https://git.openjdk.org/jdk/pull/24180/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24180&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8352645
Stats: 1489 lines in 437 files changed: 799 ins; 653 del; 37 mod
Patch: https://git.openjdk.org/jdk/pull/24180.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24180/head:pull/24180
PR: https://git.openjdk.org/jdk/pull/24180
More information about the build-dev
mailing list