RFR: 8289049: x86_32 build fails with GCC 11 due to newString646_US warning

Aleksey Shipilev shade at openjdk.org
Mon Aug 1 12:55:52 UTC 2022


See bug report for reproducer and error message. The warning looks quite superficial, and I initially suspected that it complains about `int len = (int)strlen(str)` cast of `size_t`. But what is confusing is nearly the similar code in `newStringCp1252`  apparently does not produce the warning: https://github.com/openjdk/jdk/blob/f5d1b5bda27c798347ae278cbf69725ed4be895c/src/java.base/share/native/libjava/jni_util.c#L533-L566

I propose we chalk it up to false/odd compiler warning and sync up unproblematic `newStringCp1252` and `newString646_US` implementation to dodge it.

Additional testing:
 - [x] Linux x86_32 build with GCC 11
 - [x]  Linux x86_32 `tier1` test with GCC 9
 - [ ]  Linux x86_64 `tier1` test with GCC 9

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

Commit messages:
 - Another fix
 - Fix

Changes: https://git.openjdk.org/jdk/pull/9702/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=9702&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8289049
  Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/9702.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9702/head:pull/9702

PR: https://git.openjdk.org/jdk/pull/9702


More information about the core-libs-dev mailing list