IBM Support

PI90712: Incorrect code generated for IF ... AND statements at OPT(2)

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • For an IF statment with (in)equality conjunctions, the generated
    code branches to the ELSE clause when it should be dropping
    through towards the THEN clause, and operands of the compares
    may not be properly loaded into registers.
    

Local fix

  • Compile at OPT(0) or OPT(1)
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V6.2 compiling     *
    *                 programs at OPT(2) containing multiple OR    *
    *                 EQUALS clauses with literal values in an IF  *
    *                 statement.                                   *
    ****************************************************************
    * PROBLEM DESCRIPTION: Incorrect result: the compare fails     *
    *                      when it should succeed.                 *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    ****************************************************************
    In some cases multiple OR compares were being reversed.
    

Problem conclusion

  • Compiler was updated to avoid generating an invalid compare in
    this case.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI90712

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655EC600

  • Reported release

    620

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-11-27

  • Closed date

    2017-11-27

  • Last modified date

    2018-06-04

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

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

Modules/Macros

  • IGY8RWTU IGYCASMB IGYCCBE  IGYCCCRT 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 IGYCOB2  IGYCOPI
    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 IGYDRV   IGYEQCWI
    IGYMSGE  IGYMSGK  IGYMSGT  IGYQCBE  IGYSIDEK IGYZQDRV
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655EC600

Applicable component levels

  • R620 PSY UP

       A

  • R621 PSY UP

       A

  • R622 PSY UI56122

       UP18/06/01 P F805

  • R62H PSY UP

       A

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":"620","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
12 December 2023