IBM Support

IZ97039: ERROR MESSAGE IN CONSTRUCTOR INITIALIZER

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The xlC compiler generates 1540-0063(S) error for the below
    program conforming to C++ Standard.
    
     $ cat test.cpp
      class hoge  {
        static const int n = 2;
        double (*a)[n];
        int b;
    
      public:
        hoge():a(new double[n][n]),b(0)  // caused 1540-0063(S)
        { }
        ~hoge()
        {  delete [] a;  }
      };
      int main() {
              hoge a;
              return 0;
      }
    
    $xlC test.cpp
    
     "test.cpp", line 7.30: 1540-0063 (S) The text "b" is
    unexpected.
    

Local fix

  • Replace the order in ctor-initializer such as:
    
     <before>
    
      hoge():a(new double[n][n]),b(0)
    
      <after>
      hoge():b(0),a(new double[n][n])
    

Problem summary

  • PROBLEM DESCRIPTION: Name resolution in member initializer list
    was turned off in multidimensional array declarator, causing
    syntax error
    
    USERS AFFECTED: Users of comma separated member initializer
    list with the presence of multidimensional array declarator
    

Problem conclusion

  • Name resolution is turned on when encountering resolved name
    for member initializer.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IZ97039

  • 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

    2011-03-21

  • Closed date

    2011-04-20

  • Last modified date

    2011-04-20

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

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

    LI76261

Fix information

  • Fixed component name

    XL C/C++ AIX

  • Fixed component ID

    5724X1300

Applicable component levels

  • RB10 PSY U843326

       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:
20 April 2011