[jdk8u-dev] RFR: 8074840: Resolve disabled warnings for libjli and libjli_static

Andrew John Hughes andrew at openjdk.org
Fri Jan 9 02:52:39 UTC 2026


On Mon, 8 Dec 2025 18:55:16 GMT, Zdenek Zambersky <zzambers at openjdk.org> wrote:

> Backport, which fixes compiler errors/warnings in libjli.
> 
> **Motivation:**
> - to fix compilation error (and some warnings) on macos-15 (clang):
> 
> ...
> 2025-11-19T17:50:19.3284070Z /Users/runner/work/jdk8u-dev/jdk8u-dev/jdk/jdk/src/share/bin/parse_manifest.c:680:12: note: use '==' to turn this assignment into an equality comparison
> 2025-11-19T17:50:19.3285850Z   680 |     if (rc = find_file(fd, &entry, manifest_name) != 0) {
> 2025-11-19T17:50:19.3286370Z       |            ^
> 2025-11-19T17:50:19.3287050Z       |            ==
> 2025-11-19T17:50:19.3287530Z 4 warnings generated.
> 2025-11-19T17:50:19.3289930Z /Users/runner/work/jdk8u-dev/jdk8u-dev/jdk/jdk/src/share/bin/splashscreen_stubs.c:64:30: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
> 2025-11-19T17:50:19.3291940Z    64 |     INVOKE(SplashLoadMemory, NULL)(pdata, size);
> 2025-11-19T17:50:19.3292900Z       |                              ^~~~
> ...
> 
> 
> **Differences in 8:**
> - excluded changes in `jdk/make/lib/CoreLibraries.gmk` due to differences in build system (not applicable to 8)
> - excluded cast of `STACK_SIZE_MINIMUM` in `java.c`, as [JDK-6762191](https://bugs.openjdk.org/browse/JDK-6762191), which adds that code, is missing in 8
> - excluded modifications to `readAt` function in `parse_manifest.c`, as function was added by [JDK-8073158](https://bugs.openjdk.org/browse/JDK-8073158), which is missing in 8
> - copyright differences due to missing backports or backport applied out of order (some had to be updated manually)
> - differences in paths
> 
> Apart from above differences most of remaining code changes applied cleanly (with updated paths).
> 
> **Testing:**
> Tier1 in GHA: **OK** (Failures of `TestCPUAwareness.java` are [unrelated](https://github.com/openjdk/jdk8u-dev/pull/727))

Change looks good. Copyright header changes are adjusted appropriately and omissions understandable. The `ergo_i586.c` exclusion seems to be already covered by this `jdk/make/lib/CoreLibraries.gmk` logic in 8u:

~~~
  # if the architecture specific ergo file exists then
  # use it, else use the generic definitions from ergo.c
  ifneq ($(wildcard $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/bin/$(ERGO_ARCH_FILE)), )
    BUILD_LIBJLI_FILES += $(ERGO_ARCH_FILE)
  else # !ERGO_ARCH_FILE
    LIBJLI_CFLAGS += -DUSE_GENERIC_ERGO
  endif # ERGO_ARCH_FILE
~~~

It only exists for Solaris.

It also seems to have been removed in 11u in [JDK-8169001](https://bugs.openjdk.org/browse/JDK-8169001).

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

Marked as reviewed by andrew (Reviewer).

PR Review: https://git.openjdk.org/jdk8u-dev/pull/733#pullrequestreview-3642116219
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/733#issuecomment-3726809836


More information about the jdk8u-dev mailing list