On Wed, 12 Oct 2022 11:04:14 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:

>> After [JDK-8294281](https://bugs.openjdk.org/browse/JDK-8294281), it is now 
>> possible to disable warnings for individual files instead for whole 
>> libraries. I used this opportunity to go through all disabled warnings in 
>> hotspot.
>> 
>> Any warnings that were only triggered in a few files were removed from 
>> hotspot as a whole, and changed to be only disabled for those files.
>> 
>> Some warnings didn't trigger in any file anymore, and could just be removed.
>> 
>> Overall, this reduced the number of disabled warnings by roughly half for 
>> gcc, clang and visual studio. The remaining warnings are sorted in 
>> "frequency", that is, the first listed warnings are triggered in the most 
>> number of files, while the last in the fewest number of files. So if anyone 
>> were to try to address the remaining warnings, it would make sense to chop 
>> of this list from the back.
>> 
>> I believe the warnings that are disabled on a per-file basis can most likely 
>> be fixed relatively easily.
>> 
>> I have verified this by Oracle's internal CI system, and GitHub Actions. 
>> (But I have not yet gotten a fully green run due to instabilities in GHA, 
>> however this patch can't reasonably have anything to do with that.) As 
>> always, warnings tend to differ a bit between compilers, so if someone wants 
>> to take this on a spin with some other version, please go ahead. If I missed 
>> some warning, in worst case we'll just have to add it back again, and in the 
>> meanwhile `configure --disable-warnings-as-errors` is an okay workaround.
>> 
>> It also turned out that JDK-8294281 did not save the new per-file warnings 
>> in VarDeps, so I had to move $1_WARNINGS_FLAGS from $1_BASE_CFLAGS to 
>> $1_CFLAGS (and similar for C++).
>> 
>> Annoyingly, the assert macro triggers 
>> `tautological-constant-out-of-range-compare` on clang, so while this is a 
>> single problem in a single file, this erupts all over the place in debug 
>> builds. If this can be fixed, the ugly extra `DISABLED_WARNINGS_clang += 
>> tautological-constant-out-of-range-compare` for non-release builds can be 
>> removed.
>
> Magnus Ihse Bursie has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Github workflow changes were not supposed to be in this PR...

Looks good.

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

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

Reply via email to