[8u20] Request for approval for CR 8031737: CHECK_NULL and CHECK_EXCEPTION macros cleanup
sean.coffey at oracle.com
Thu Feb 20 11:35:54 PST 2014
JPRT results are good. I just wanted to be sure given that this code is
sensitive for builds. Approved for jdk8u-dev.
Thanks for handling this Goetz.
On 20/02/2014 18:07, roger riggs wrote:
> Hi Sean,
> 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/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
>>> 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