RFR: 8315794: RISC-V: build fails with GCC 12.3
Antonios Printezis
tonyp at openjdk.org
Thu Sep 7 21:22:38 UTC 2023
On Thu, 7 Sep 2023 18:35:29 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:
>> Just for the record, this is very likely https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104475 .
>
> I'd like to not disable the warnings without a better understanding of the problem. I agree with @theRealAph that gcc
> bug 104475 is likely where the warning is coming from. But it may be that giving gcc better control flow information
> via appropriate `[[noreturn]]` or (something like) `std::unreachable()` might be better.
@kimbarrett @erikj79 Thanks for taking a look.
> Generally when we disable warnings, we document in the bug why the warning is benign or incorrect in this case, or file a followup bug to address it properly.
> I'd like to not disable the warnings without a better understanding of the problem.
I understand. I just can't figure out what's causing this. The call is a few nested templates and I don't understand why the type passed to the outermost one ends up as `void*` in the innermost one.
> The fix for [JDK-8294031](https://bugs.openjdk.org/browse/JDK-8294031) was to make various error reporting functions `[[noreturn]]`. Is there perhaps a missing `[[noreturn]]` in the RISC-V code?
I don't think the issue is RISC-V-specific. It's in two shared files (`xPageAllocator.cpp` and `zPageAllocator.cpp`).
> Also, does the failure happen in release builds, or only (fast)debug builds?
Both.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/15593#issuecomment-1710783702
More information about the build-dev
mailing list