[jdk8u-dev] RFR: 8342822: jdk8u432-b06 does not compile on AIX [v2]

Varada M varadam at openjdk.org
Wed Nov 20 07:05:17 UTC 2024


On Thu, 7 Nov 2024 11:40:27 GMT, Varada M <varadam at openjdk.org> wrote:

>> Use of llabs() for jlong resolves the build error on AIX.
>> Performed jtreg testing for hotspot/test on both aix-ppc64 and linux-ppc64le and no related failures observed 
>> 
>> JBS : [JDK-8342822](https://bugs.openjdk.org/browse/JDK-8342822)
>
> Varada M has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8342822: jdk8u432-b06 does not compile on AIX

/opt/IBM/xlC/13.1.3/bin/xlC version.cpp

/opt/IBM/xlC/13.1.3/bin/.orig/xlC: 1501-216 (W) command option -64 is not recognized - passed to ld
"version.cpp", line 22.39: 1540-0219 (S) The call to "abs" has no best match.
"version.cpp", line 22.43: 1540-1229 (I) Argument number 1 is an rvalue of type "unsigned long".
"/opt/IBM/xlC/13.1.3/include/cstdlib", line 74.15: 1540-1202 (I) No candidate is better than "abs(long)".
"version.cpp", line 22.43: 1540-1231 (I) The conversion from argument number 1 to "long" uses "an integral conversion".
"/usr/include/stdlib.h", line 819.33: 1540-1202 (I) No candidate is better than "abs(int)".
"version.cpp", line 22.43: 1540-1231 (I) The conversion from argument number 1 to "int" uses "an integral conversion".
"version.cpp", line 22.44: 1540-0840 (W) The integer literal "43898989878" is out of range.

 /opt/IBM/xlC/13.1.3/bin/xlC -q64 version.cpp
abs(-43898989878) = 43898989878


I found that for long long int abs can overload with 64 bit compilation. The above error is observed while building jdk8 on AIX. 
Also with ABS template function we could resolve build error.

-------------

PR Comment: https://git.openjdk.org/jdk8u-dev/pull/600#issuecomment-2487668534


More information about the jdk8u-dev mailing list