IV72087: INCORRECT CONDITIONAL RESULT WITH -QIPA AND -Q64
Fixes are available
XL C/C++ for AIX Fix Pack 22 (September 2015 PTF) for 11.1
XL C for AIX Fix Pack 23 (March 2016 PTF) for 11.1
XL C/C++ for AIX Fix Pack 23 (March 2016 PTF) for 11.1
XL C for AIX Fix Pack 24 (September 2016 PTF) for 11.1
XL C/C++ for AIX Fix Pack 24 (September 2016 PTF) for 11.1
XL C for AIX Fix Pack 22 (September 2015 PTF) for 11.1
Closed as program error.
A code optimization is occurring that is producing incorrect values for unsigned int datatypes used for comparison.
Do not use optimization.
PROBLEM DESCRIPTION: Incorrect comparison result for unsigned int variable in 64bit mode. USERS AFFECTED: Users who use an unsigned int datatype as a comparison variable, and compile with optimization.
Because the code is in 64-bit mode, the upper bits of the value need to be cleared before use. The compiler will now generate code that clears the upper 32-bits to avoid the incorrect value comparison.
Reported component name
XL C/C++ AIX
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
XL C FOR AIX
Fixed component ID
Applicable component levels