IBM Support

IV42651: SYNTAX ERROR WITH -QCOMPACT

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The compiler complains about syntax error while compiling the
    following valid test case.
    
    // small testcase
    
    const int otl_var_int=4;
    
    template <class A>
    struct otl_tmpl_inout_stream{};
    
    template <class B>
    struct otl_select_stream_t{
     template<typename T,const int T_type>
    otl_tmpl_inout_stream<B> & operator>>(T& n);
    };
    
    typedef otl_select_stream_t<char> otl_select_stream;
    
    struct otl_stream{
       otl_select_stream** ss;
    
       otl_stream& operator>>(int& n)
       {
    
    // 49304
       (*ss)->operator>><int,otl_var_int>(n);
       return *this;
       }
    };
    
    xlC -O -qcompact b.cpp
    "b.cpp", line 22.25: 1540-0064 (S) Syntax error:  "(" was
    expected but "," was found.
    

Local fix

  • N/A
    

Problem summary

  • PROBLEM DESCRIPTION: Template syntax error with -qcompact.
    
    USERS AFFECTED: Programs that call template member operator
    function where the member is a pointer to object.
    

Problem conclusion

  • the problem is a corner case and is fixed.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV42651

  • Reported component name

    XL C/C++ AIX

  • Reported component ID

    5724X1300

  • Reported release

    B10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-05-14

  • Closed date

    2013-08-13

  • Last modified date

    2013-08-13

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    LI77572 IV49633 LI77628

Fix information

  • Fixed component name

    XL C/C++ AIX

  • Fixed component ID

    5724X1300

Applicable component levels

  • RB10 PSY U860996

       UP C

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGH3R","label":"XL C\/C++ for AIX"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"11.1","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
13 August 2013