IBM Support

IZ91298: HEADER FILES CHANGING OBJECT_MODEL

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When including header files for the TR1 unordered associative
    containers and defining macro __IBMCPP_TR1__, the object model
    of the compile is set to 'compat' numerous times and will
    override previous object model settings.
    
    If code is compiled with different object models, compile errors
    may be seen:
    
    "test.cpp", line 20.7: 1540-2200 (S) Class "foobar" has base
    classes with different object models.
    
    As well, the object model setting affects name mangling which
    will affect expected exported/imported symbol names.
    

Local fix

  • Modify code to explicitly use a specific object model using the
    #pragma object_model setting.
    

Problem summary

  • PROBLEM DESCRIPTION:
    Some C++ header files are changing the object model with
    #pragma object_model(compat).
    
    USERS AFFECTED:
    Programs using a non-compat object model that include an
    affected C++ header files.
    

Problem conclusion

  • The C++ header files will now change the object model back to
    its original setting.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IZ91298

  • 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

    2010-12-21

  • Closed date

    2011-03-08

  • Last modified date

    2011-03-08

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

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

    LI76097

Fix information

  • Fixed component name

    XL C/C++ AIX

  • Fixed component ID

    5724X1300

Applicable component levels

[{"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:
08 March 2011