Fixes are available
APAR status
Closed as program error.
Error description
The compiler frontend (xlCentry) produces and internal compiler error when compiling the following test case at -O0. It works fine at -O2 or higher. ===== COMPILE COMMAND: bgxlC -c test.cpp -O0 ===== TEST CASE: $ cat test.cpp struct A{ _Complex double& operator()(int, int); }; void f() { A a; ~a(0, 0); } $ ===== ACTUAL OUTPUT: $ bgxlC -c test.cpp -O0 /opt/ibmcmp/vacpp/bg/12.1/bin/.orig/bgxlC: 1501-230 (S) Internal compiler error; please contact your Service Representative. For more information visit: http://www.ibm.com/support/docview.wss?uid=swg21110810 $ ===== EXPECTED OUTPUT: Should compile clean without an internal compiler error.
Local fix
n/a
Problem summary
USERS AFFECTED: Users of complex operations who use references and optimization are affected by this issue. PROBLEM DESCRIPTION: The complex conjugate operator is not correctly processed when the operand is a C++ reference, which leads to an incorrect optimization that result in a compiler failure during code generation. Minimal TC: _Complex double& foo(); void f() { ~foo(); }
Problem conclusion
The solution is to have the front-end correctly process references in the conjugate operator.
Temporary fix
Comments
APAR Information
APAR number
LI76885
Reported component name
XL C/C++ FOR BG
Reported component ID
5799AG100
Reported release
C10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-07-10
Closed date
2012-11-23
Last modified date
2012-11-23
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XL C/C++ FOR BG
Fixed component ID
5799AG100
Applicable component levels
RC10 PSY
UP
Rate this page:
Average rating
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.