IBM Support

PH41165: INCORRECT BRANCH CALCULATION IN COMMON PROGRAM RESULTS IN LOOPING CONDITION, WITH OPT(2)

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A called program may return to an incorrect location when it is
    called by multiple programs
    

Local fix

  • Compile with OPT(0)
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling      *
    *                 programs as a batch compilation where one    *
    *                 program statically calls another non-nested  *
    *                 program more than once and the called        *
    *                 program contains a GOTO to a paragraph or    *
    *                 section within or PERFORMs a paragraph or    *
    *                 section.                                     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Execution within a called program       *
    *                      could incorrectly transfer to another   *
    *                      copy of that called program.            *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF                       *
    ****************************************************************
    The compiler may inline smaller programs into their caller,
    replacing the call statement with the body of the called
    program. This allows for more optimization opportunities and
    increases performance by getting rid of the overhead of calling
    a program. Labels created from paragraph or section names must
    be unique in a program, so if a called program is inlined two
    or more times into the same caller, the compiler created only
    one label for the multiple copies. This meant that branches to
    a paragraph or section name in any of the copies would end up
    at the label in the first copy, changing the program's flow of
    execution.
    

Problem conclusion

  • The compiler was fixed to only inline a program into its caller
    once.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH41165

  • 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

    2021-10-06

  • Closed date

    2021-10-21

  • Last modified date

    2021-11-10

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

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

    PH42023

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 IGYCOB2E IGYCOPI
    IGYCOPT  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  IGYZQDRV IGYZQENU
    IGYZQJPN
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655EC600

Applicable component levels

  • R620 PSY UI77740

       UP21/10/30 P F110

  • R621 PSY UI77741

       UP21/10/30 P F110

  • R622 PSY UI77742

       UP21/10/30 P F110

  • R62H PSY UI77743

       UP21/10/30 P F110

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"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"620","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
12 December 2023