[8u20] Request for approval for CR 8031737: CHECK_NULL and CHECK_EXCEPTION macros cleanup
goetz.lindenmaier at sap.com
Thu Feb 20 13:54:27 PST 2014
thanks for looking at this an testing it!
It's good it's through JPRT, unfortunately I can't do that.
From: roger riggs [mailto:roger.riggs at oracle.com]
Sent: Thursday, February 20, 2014 7:07 PM
To: Seán Coffey; Lindenmaier, Goetz; jdk8u-dev at openjdk.java.net; ppc-aix-port-dev at openjdk.java.net; hotspot-dev at openjdk.java.net
Subject: Re: [8u20] Request for approval for CR 8031737: CHECK_NULL and CHECK_EXCEPTION macros cleanup
Yes, these changes match the changes in JDK 9.
On 2/20/2014 12:06 PM, Seán Coffey wrote:
> 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:
>> 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:
>> The individual patches in this change are unchanged.
>> The original change:
>> The bugid:
>> The change on top of this:
>> In jdk8u:
>> The change applies to both, jdk8u-dev and ppc-aix-port/stage. I would
>> propose to push it to jdk8u-dev.
>> Best regards,
>> 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/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
>> The warning on linux:
>> In file included from
>> warning: "CHECK_NULL" redefined
>> In file included from
>> .../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