IBM Support

LI75120: CORRUPTION OF TRACEBACK TABLE.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A __DoThrowV6 is occuring at runtime during the applications
    exception handling process which leads to a SIGSEGV.
    
    The miscompile happens when a removable function (either from
    using a pragma or from using the Template Registry) with
    exception handling compiled at noopt is mishandled by the
    backend, corrupting one value in a backend table. This in turn
    corrupts the exception handling information for later
    non-removable functions which have no exception handling,
    resulting in them having incorrect traceback tables.  If there
    is a throw while one of those functions is active and in the
    path between the throw and catch, execution might fail.
    

Local fix

  • n/a
    

Problem summary

  • C++ progams containing an is_removable
    pragma or compiled with the templateegistry option, using
    throw, and compiled at noopt on AIX may experience this issue.
    
    A compiler error sometimes results in an
    incorrect traceback table incorrectly indicating a
    destructor is needed if a throw is done.  A throw
    through that function sometimes causes incorrect
    execution.
    

Problem conclusion

  • Changed exception handling to avoid
    corrupting backend table when the exception state variable
    has no owner.
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI75120

  • Reported component name

    XL C/C++ RHEL52

  • Reported component ID

    5724U8310

  • Reported release

    A10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-12-01

  • Closed date

    2009-12-01

  • Last modified date

    2009-12-01

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

    IZ45744

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

Fix information

  • Fixed component name

    XL C/C++ RHEL52

  • Fixed component ID

    5724U8310

Applicable component levels

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSJT9L","label":"XL C\/C++"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"A.1","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
14 October 2021