IBM Support

PI93738: At OPT(0) invalid reference modifications of string compare operands can lead to an abend0C4 or other invalid results

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • At OPT(0), the compiler generates compare code based on known
    compile time comparand lengths, using proxy comparand items to
    account for the blank padding of the shorter comparand. With an
    invalid reference modification whose length exceeds the defined
    length of the longer comparand, copying the actual comparand
    into the proxy item will possibly overlay memory following the
    proxy. This can lead to incorrect results or an abend0c4
    elsewhere in the compile unit.
    

Local fix

  • Do not use coding practices that rely on invalid reference
    modifications.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.2 compiling     *
    *                 programs at OPT(0) that compare PIC X(1)     *
    *                 LINKAGE SECTION data items using a           *
    *                 reference modification with length greater   *
    *                 than one to figurative constants like        *
    *                 SPACES.                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: The compiler generates code that may    *
    *                      compare only the first byte of the      *
    *                      data item.                              *
    ****************************************************************
    The compiler was generating code under the assumption that
    since the data item was PIC X(1), only one byte needed to be
    compared.
    

Problem conclusion

  • The compiler was fixed to always compare the number of bytes
    specified in the reference modification.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI93738

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655W3200

  • Reported release

    520

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-02-13

  • Closed date

    2018-03-15

  • Last modified date

    2018-04-03

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

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

    PI95028

Modules/Macros

  • IGY8RWTU IGYCBE   IGYCCBE  IGYCCICS IGYCCSRV IGYCDGEN IGYCDIAG
    IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4 IGYCEN$5
    IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT IGYCJA$0
    IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8 IGYCJA$D
    IGYCJA$R IGYCLIBH IGYCLIBO IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1
    IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOSCN IGYCPGEN IGYCRCTL
    IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT  IGYCSCAN IGYCSIMD IGYCUE$0
    IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5 IGYCUE$8 IGYCUE$D
    IGYCUE$R IGYCXREF IGYECWI  IGYMSGE  IGYMSGK  IGYMSGT
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655W3200

Applicable component levels

  • R520 PSY UI54486

       UP18/03/29 P F803

  • R521 PSY UI54487

       UP18/03/30 P F803

  • R522 PSY UI54488

       UP18/03/30 P F803

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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"LOB17","label":"Mainframe TPS"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
03 April 2018