RFR: 8354941: Build failure with glibc 2.42 due to uabs() name collision [v2]
Severin Gehwolf
sgehwolf at openjdk.org
Tue Apr 29 09:26:46 UTC 2025
On Tue, 29 Apr 2025 08:47:04 GMT, Severin Gehwolf <sgehwolf at openjdk.org> wrote:
>> glibc 2.42 defines its own version of `uabs` when `stdlib.h` is being included. I propose to rename the hotspot version of `uabs` to `custom_uabs` (or some other suitable name) to avoid the name clash. The rename of the function is hidden by using a `UABS` macro instead in the code.
>>
>> Testing:
>> - [x] GHA (also [here](https://github.com/jerboaa/jdk/actions/runs/14513365723))
>> - [x] Builds with this patch with GCC 15 where the build would fail earlier and pass with this patch.
>>
>> Thoughts?
>
> Severin Gehwolf has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
>
> - Use g_uabs instead of uabs
> - Merge branch 'master' into jdk-8354941-gcc-15-build-fix
> - 8354941: Build failure with GCC 15 due to uabs() name collision
OK, thanks. I went with `g_uabs` for the rename and removed the macro. Please let me know what you think about this approach to get the build failure fixed.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/24723#issuecomment-2838074580
More information about the hotspot-dev
mailing list