[REGRESSION?] Build warnings at jdhuff.c with GCC 6
Yasumasa Suenaga
yasuenag at gmail.com
Tue Aug 23 13:10:54 UTC 2016
Hi all,
I've fixed several warnings when we build OpenJDK with GCC 6 in JDK-8160294.
However, I encountered shift-negative-value warnings at jdhuff.c on my Fedora 24 (GCC 6.1.1):
--------------
/home/ysuenaga/OpenJDK/hs/jdk/src/java.desktop/share/native/libjavajpeg/jdhuff.c:458:13: warning: left shift of negative value [-Wshift-negative-value]
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
^~
/home/ysuenaga/OpenJDK/hs/jdk/src/java.desktop/share/native/libjavajpeg/jdhuff.c:458:28: warning: left shift of negative value [-Wshift-negative-value]
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
^~
/home/ysuenaga/OpenJDK/hs/jdk/src/java.desktop/share/native/libjavajpeg/jdhuff.c:458:43: warning: left shift of negative value [-Wshift-negative-value]
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
:
--------------
I think these warnings are available from JDK-8074827.
This issue enables warnings to fix in the source code.
However, in review of JDK-8160294, I heared that warnings in IJG JPEG library should just be suppressed:
http://mail.openjdk.java.net/pipermail/jdk9-dev/2016-June/004497.html
So I think they should be suppressed and we should fix as below:
--------------
diff -r b548b8217d8c make/lib/Awt2dLibraries.gmk
--- a/make/lib/Awt2dLibraries.gmk Mon Aug 22 19:28:36 2016 -0700
+++ b/make/lib/Awt2dLibraries.gmk Tue Aug 23 22:08:44 2016 +0900
@@ -490,7 +490,7 @@
CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBJAVAJPEG_HEADERS) \
$(LIBJAVA_HEADER_FLAGS) \
-I$(SUPPORT_OUTPUTDIR)/headers/java.desktop, \
- DISABLED_WARNINGS_gcc := clobbered, \
+ DISABLED_WARNINGS_gcc := clobbered shift-negative-value, \
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
--------------
If it is correct, I file it to JBS and upload webrev.
Do you think about it?
Thanks,
Yasumasa
More information about the build-dev
mailing list