IBM Support

PI65902: METAL-C COMPILER MAY REFERENCE AN INVALID ADDRESS WHILE ACCESSING STORAGE USING ALET IN ACCESS REGISTER MODE.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • If a user composes a far pointer out of a valid ALET and a hard
    coded constant offset there is a potential that the compiler
    will generate code trying to dereference the pointer using a
    fixed offset and base register R0 to mean zero address. This
    causes the compiler to use AR0 to hold the ALET but AR0 also is
    interpreted at ALET=0.  As a result it could lead to
    referencing an invalid address in primary space instead of the
    valid non-primary address space.
    

Local fix

  • Avoid using hard coded offset when constructing a far pointer.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: XLC users of Metal-C AR mode.                *
    ****************************************************************
    * PROBLEM DESCRIPTION: If a user composes a far pointer out    *
    *                      ofa valid ALET and a hard coded         *
    *                      constant offset there is a potential    *
    *                      that the compiler will generate code    *
    *                      trying todereference the pointer using  *
    *                      a fixed offset and base register R0 to  *
    *                      mean zero address. This forces the      *
    *                      compiler to use AR0 to hold the ALET    *
    *                      but AR0 also is interpreted at ALET=0.  *
    *                      This could lead to referencing an       *
    *                      invalid address in primary space        *
    *                      instead of the valid non-primary        *
    *                      address space.                          *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    *                                                              *
    ****************************************************************
    .
    

Problem conclusion

  • Apply provided fix.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI65902

  • Reported component name

    C/C++ FOR MVS

  • Reported component ID

    56551210A

  • Reported release

    7A0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-07-14

  • Closed date

    2016-09-28

  • Last modified date

    2016-12-01

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

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

Modules/Macros

  • CCNETBY
    

Fix information

  • Fixed component name

    C/C++ FOR MVS

  • Fixed component ID

    56551210A

Applicable component levels

  • R7A0 PSY UI41215

       UP16/11/02 P F611

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.

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

Document Information

Modified date:
09 January 2021