RFR: 8345016: [ASAN] java.c false positive ‘%s’ directive argument is null [-Werror=format-truncation=] [v3]
SendaoYan
syan at openjdk.org
Mon Dec 16 12:47:13 UTC 2024
> Hi all,
> The file src/java.base/share/native/libjli/java.c generate compile warning by gcc14 with gcc options `-fsanitize=undefined -O2`, and make jdk build error when configure with option `--enable-ubsan`. So I think it's necessory to make gcc quiet and make jdk build normally with configure option `--enable-ubsan`.
>
> This PR add `NULL` check for `s` after call `s = JLI_WildcardExpandClasspath(s);` to make gcc quiet. There is another solution to disable the compile warning seen as below, but it will disable the compile warning of java.c. So I use the first solution.
>
>
>
> diff --git a/make/modules/java.base/lib/CoreLibraries.gmk b/make/modules/java.base/lib/CoreLibraries.gmk
> index 61ac495968a..5bc83cf0978 100644
> --- a/make/modules/java.base/lib/CoreLibraries.gmk
> +++ b/make/modules/java.base/lib/CoreLibraries.gmk
> @@ -178,6 +178,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJLI, \
> OPTIMIZATION := HIGH, \
> CFLAGS := $(LIBJLI_CFLAGS) $(LIBZ_CFLAGS), \
> DISABLED_WARNINGS_gcc := unused-function unused-variable, \
> + DISABLED_WARNINGS_gcc_java.c := format-truncation, \
> DISABLED_WARNINGS_clang := deprecated-non-prototype format-nonliteral \
> unused-function, \
> DISABLED_WARNINGS_clang_java_md_macosx.m := unused-variable, \
SendaoYan has updated the pull request incrementally with one additional commit since the last revision:
Add NULL check after call "s = JLI_WildcardExpandClasspath(s);"
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/22546/files
- new: https://git.openjdk.org/jdk/pull/22546/files/1ca177ca..0d5395e2
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=22546&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=22546&range=01-02
Stats: 11 lines in 1 file changed: 2 ins; 9 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/22546.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/22546/head:pull/22546
PR: https://git.openjdk.org/jdk/pull/22546
More information about the core-libs-dev
mailing list