RFR: 8288754: GCC 12 fails to build zReferenceProcessor.cpp

Kim Barrett kbarrett at openjdk.org
Mon Jun 20 18:50:07 UTC 2022


On Mon, 20 Jun 2022 17:39:43 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> When compiling with GCC 12.1.1 (current in Fedora rawhide), the following warning-as-error is produced and breaks the build by default:

Looks good.

> (This thing should be more reasonably handled when `ShouldNotReachHere()` is
> somehow `nonreturn`-ed, but Hotspot style doc is still undecided on this).

The problem with using `[[noreturn]]` for assert/guarantee/ShouldNotReachHere
&etc is that they aren't currently noreturn, due to `Debugging` and
(in non-product builds) `SuppressErrorAt`.  I've sometimes wondered if anyone
actually uses `SuppressErrorAt`.  But I haven't pursued the question because of
`Debugging`, which seems to be involved in dealing with error handler
reentrancy or recursion or the like (I don't recall details).

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

Marked as reviewed by kbarrett (Reviewer).

PR: https://git.openjdk.org/jdk19/pull/47



More information about the hotspot-gc-dev mailing list