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

Aleksey Shipilev shade at openjdk.org
Tue Jun 21 14:49:12 UTC 2022


On Tue, 21 Jun 2022 12:13:13 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:

>> 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).
>
>> 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).
> 
> Also, see the discussion in https://bugs.openjdk.org/browse/JDK-8065585

@stefank, do you agree with this patch?

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

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



More information about the hotspot-gc-dev mailing list