RFR: 8378180: Compiling OpenJDK with C23 C-Compiler gives warning: initialization discards ‘const’ qualifier from pointer target type

Luca Kellermann duke at openjdk.org
Thu Feb 26 15:03:39 UTC 2026


On Thu, 26 Feb 2026 04:26:43 GMT, Jasmine Karthikeyan <jkarthikeyan at openjdk.org> wrote:

> Hi all, this is a quick patch to fix a build issue I encountered when updating my Linux system. [Glibc 2.43](https://lists.gnu.org/archive/html/info-gnu/2026-01/msg00005.html) changes the definition of some string related functions to return `const char*` when provided a `const char*` parameter, rather than the previous behavior of returning `char*`. I've fixed this by applying the `const` modifier, and casting to `char*` when needed. This should be backwards-compatible since assigning a non-const pointer to const is an implicit conversion. Thoughts and comments would be appreciated on whether this is the best way to fix this issue. Thanks!

src/java.base/unix/native/libjava/TimeZone_md.c line 98:

> 96:     static const char *zidir = "zoneinfo/";
> 97: 
> 98:     char* pos = (char*) strstr((const char *)str, zidir);

Suggestion:

    char *pos = strstr(str, zidir);

removing the first cast should also work here

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

PR Review Comment: https://git.openjdk.org/jdk/pull/29929#discussion_r2859514812


More information about the net-dev mailing list