IBM Support

PH38137: Single stepping problem with Xpediter debugger because the compiler splits a statement at OPT(0) when using NUMCHECK

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Third party debuggers like Xpediter depend on OPT(0) compiles
    not rearranging code. The use of NUMCHECK is causing a MOVE
    statement to be split into two parts, one under the MOVE
    statement number, and the rest under a later statement, even at
    OPT(0).
    

Local fix

  • Compile with NONUMCHECK
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of IBM Enterprise COBOL 6.2 compiling  *
    *                 programs with NUMCHECK and OPT(0).           *
    ****************************************************************
    * PROBLEM DESCRIPTION: The compiler may generate instructions  *
    *                      that have a line number that is out of  *
    *                      order with the line numbers of          *
    *                      surrounding instructions.               *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF,                      *
    ****************************************************************
    The compiler's internal representation of a program makes
    frequent reference to the base address of WORKING-STORAGE, which
    is permanently in register R9. The compiler initially generates
    NUMCHECK checks for all affected senders and then runs analysis
    to remove checks of known good data, known bad data, or of
    values  that have already been checked. Removing such checks
    caused the compiler to keep references to the base address of
    WORKING-STORAGE and generate an instruction for the first time
    any such reference was found. As references to the base address
    of WORKING-STORAGE could be spread throughout the program, this
    unneeded instruction would have the line number of the first
    reference to the base address of WORKING-STORAGE but might be
    generated much later in the program, making the instruction out
    of order.
    

Problem conclusion

  • The compiler was fixed to avoid generating the unnecessary
    instruction. "202106_62_work_sheet.txt" 503 lines, 24422
    characters
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH38137

  • 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-06-15

  • Closed date

    2021-06-16

  • Last modified date

    2021-07-02

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

    PH36213

  • 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 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 UI75921

       UP21/06/24 P F106

  • R621 PSY UI75922

       UP21/06/24 P F106

  • R622 PSY UI75923

       UP21/06/24 P F106

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