LI76885: INTERNAL COMPILER ERROR IN XLCENTRY AT -O0

Subscribe

You can track all active APARs for this component.

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:

    IV31738 LI77141

Fix information

  • Fixed component name

    XL C/C++ FOR BG

  • Fixed component ID

    5799AG100

Applicable component levels

  • RC10 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

XL C/C++ for Blue Gene/Q
Compiler

Software version:

12.1

Reference #:

LI76885

Modified date:

2012-11-23

Translate my page

Machine Translation

Content navigation