IBM Support

PH48115: CRASH COMPILING IN 64-BIT USING LANGLVL=EXTENDED0X AND TEMPLATE WITH STATIC DATA MEMBERS USING PARTIAL SPECIALIZATION

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Crash compiling in 64-bit using langlvl=extended0x and template
    with static data members using partial specialization
    
    
    If the user code has the specific usage
    of template features the compiler will crash.  The usage seems
    to be:
    
    1. template class with static data member with initializer
    2. class with member function that has template variation
    using the previous template and non-template overload
    3. use of that requires overload resolution of this member
    function.
    4. Another template class with a virtual function/destructor
    and partial specialization
    5. use of this second template class as a base class.
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: C++ users compiling in 64-bit mode with      *
    *                 langlvl=extended0x                           *
    *                 and using a specific combination of          *
    *                 templates with static data members and       *
    *                 other templates using partial specialization *
    *                  for base cases.                             *
    ****************************************************************
    * PROBLEM DESCRIPTION: The C++ compiler will crash during the  *
    *                      compilation of the affected code.       *
    ****************************************************************
    * RECOMMENDATION: Install fix                                  *
    ****************************************************************
    If the user code has the specific usage
    of template features the compiler will crash.  The usage seems
    to
    be:
    1. template class with static data member with initializer
    2. class with member function that has template variation
    using the previous template and non-template overload
    3. use of that requires overload resolution of this member
    function.
    4. Another template class with a virtual function/destructor
    and partial specialization
    5. use of this second template class as a base class.
    

Problem conclusion

  • This error situation is difficult to encounter and
    requires the installation of the fix to resolve.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH48115

  • Reported component name

    C/C++ FOR MVS

  • Reported component ID

    56551210A

  • Reported release

    7C0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2022-07-20

  • Closed date

    2022-08-05

  • Last modified date

    2022-10-03

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

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

    UI81828

Modules/Macros

  • CCNECICS CCNECWI  CCNED240 CCNEDSCT CCNEDWRT CCNEFILT CCNEHIFC
    CCNEIPA3 CCNEIPAO CCNEMDEP CCNEOPTP CCNEP    CCNEPP   CCNETBY
    CCNMSGE  CCNMSGT  CCNQIPA
    

Fix information

  • Fixed component name

    C/C++ FOR MVS

  • Fixed component ID

    56551210A

Applicable component levels

  • R7C0 PSY UI81828

       UP22/09/07 P F209

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSTLTF","label":"z\/OS XL C\/C++"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7C0","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
03 October 2022