[8u20] Request for approval for CR 8031737: CHECK_NULL and CHECK_EXCEPTION macros cleanup

Seán Coffey sean.coffey at oracle.com
Thu Feb 20 09:06:57 PST 2014


I'm going to run the remainder of this backport patch thru JPRT to 
ensure it's not breaking anything (else!)
Since the 8030875 fix appears to be coming back in two different fixes, 
I'm cc'ing Roger Riggs who was original author.

Roger - can you review this request also ?


On 20/02/2014 15:15, Lindenmaier, Goetz wrote:
> Hi,
> I request to backport
>    8030875: Macros for checking and returning on exceptions
> to jdk8u.
> This is needed, as
>    8031737: CHECK_NULL and CHECK_EXCEPTION macros cleanup
> was downported, that introduces the macros in jni_util.h,
> while 8030875 removed them in various other files.
> Parts of this were already fixed in
>    8034912: backport of 8031737 to jdk8u breaks linux buld.
> but that fix is not complete.
> Currently, the aix build is broken because of that.  Also
> on linux a warning is issued.  For the traces see below.
> The change does not apply completely, as parts were done by
> the other two mentioned. The remaining parts are here:
> http://cr.openjdk.java.net/~goetz/webrevs/8030875-backport/
> The individual patches in this change are unchanged.
> The original change:
> http://hg.openjdk.java.net/jdk9/hs-comp/jdk/rev/c58c6b0fbe34
> The bugid:
> https://bugs.openjdk.java.net/browse/JDK-8030875
> The change on top of this:
> http://hg.openjdk.java.net/jdk9/hs-comp/jdk/rev/fb89dc4fe8da
> In jdk8u:
> http://hg.openjdk.java.net/jdk8u/jdk8u-dev/jdk/rev/49f1903a21c1
> The change applies to both, jdk8u-dev and ppc-aix-port/stage. I would
> propose to push it to jdk8u-dev.
> Best regards,
>    Goetz.
> The build error on aix:
> jni.cpp includes both, defines.h and jni_util.h.  And both headers define CHECK_NULL.
> /bin/xlC_r -D_BIG_ENDIAN -DAIX -DPPC64 -DDEBUG -DARCH='"ppc64"' -Dppc64 -DRELEASE='"1.8.0-internal-fastdebug"' -I.../jdk/include -I.../jdk/include/aix -I.../jdk/src/share/javavm/export -I.../jdk/src/solaris/javavm/export -I.../jdk/src/share/native/common -I.../jdk/src/solaris/native/common -qchars=signed -q64 -qfullpath -qsaveopt -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC -g -qpic=large -I.../jdk/gensrc_headers -DNO_ZLIB -DUNPACK_JNI -DFULL      -O2  -DTHIS_FILE='"jni.cpp"' -c -qmakedep=gcc -MF .../jdk/objs/libunpack/jni.d -o .../jdk/objs/libunpack/jni.o .../jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp
> ".../jdk/src/share/native/com/sun/java/util/jar/pack/defines.h", line 161.9: 1540-0848 (S) The macro name "CHECK_NULL" is already defined with a different definition.
> ".../jdk/src/share/native/common/jni_util.h", line 286.9: 1540-0425 (I) "CHECK_NULL" is defined on line 286 of ".../jdk/src/share/native/common/jni_util.h".
> The warning on linux:
> In file included from .../jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp:39:
> .../jdk/src/share/native/com/sun/java/util/jar/pack/defines.h:161:1: warning: "CHECK_NULL" redefined
> In file included from .../jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp:37:
> .../jdk/src/share/native/common/jni_util.h:286:1: warning: this is the location of the previous definition
> echo  "Compiling utils.cpp (for libunpack.so)"

More information about the hotspot-dev mailing list