IBM Support

PI97560: INCORRECT OUTPUT WITH NUMCHECK WHEN PASSING DATA BY CONTENT

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • With compiler option NUMCHECK(ZON,PAC,NOBIN,MSG) in effect,
    data being passed to another program BY CONTENT may get
    overlaid, causing data corruption.
    

Local fix

  • Pass data via BY REFERENCE
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.2 compiling     *
    *                 programs at OPT(0) that use                  *
    *                 NUMCHECK(ZON|PAC|BIN) and pass USAGE         *
    *                 DISPLAY/PACKED-DECIMAL/BINARY data BY        *
    *                 CONTENT, or programs that use SSRANGE and    *
    *                 pass reference-modified data or items in a   *
    *                 table BY CONTENT.                            *
    ****************************************************************
    * PROBLEM DESCRIPTION: Data being passed to another program    *
    *                      via CALL BY CONTENT may be overwritten  *
    *                      by other data being passed BY CONTENT   *
    *                      on the same CALL.                       *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    ****************************************************************
    In a call BY CONTENT, the compiler creates temporary variables
    to contain the values being passed, so the called program
    doesn't change data in the caller. The compiler has an
    optimization to reuse temporary variables when possible.
    NUMCHECK and SSRANGE checks were changing the compiler's
    internal state so that it no longer identified some temporary
    data items as being used by the CALL. Data for multiple
    parameters might be copied to the same temporary variable,
    giving it an incorrect value.
    

Problem conclusion

  • The compiler was fixed to correctly identify when temporary
    variables are used on the same CALL statement even when
    NUMCHECK or SSRANGE checks are generated for parameters being
    passed to other programs.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI97560

  • 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-05-03

  • Closed date

    2018-05-14

  • Last modified date

    2018-06-04

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

    PI95934

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

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 UI55821

       UP18/05/30 P F805

  • R521 PSY UI55822

       UP18/05/31 P F805

  • R522 PSY UI55823

       UP18/05/31 P F805

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:
04 June 2018