IBM Support

PI67254: IGZ0072S ABEND INCORRECTLY ISSUED WITH SSRANGE, OCCURS DEPENDING ON AND SET ADDRESS OF

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The use of SSRANGE can incorrectly generate the IGZ0072S
    message and a U4038 abend at runtime when OCCURS DEPENDING ON
    is used, the object is not outside the bounds of the table, and
    SET ADDRESS OF is involved.  This problem occurs at all OPT
    levels.
    
    Sample Source Code:
    ****** ***************************** Top of Data ***************
    000400  WORKING-STORAGE SECTION.
    000500  01  P   POINTER.
    000600
    000700  LINKAGE SECTION.
    000800  01  INPUT-PARM-AREA.
    000900      05  TEST-LEN       PIC S9(4) COMP-5.
    001000      05  TEST-DAT.
    001100          10  PIC X OCCURS 1 TO 100 DEPENDING ON TEST-LEN.
    001200  01  X  PIC X.
    001300
    001400  PROCEDURE DIVISION USING INPUT-PARM-AREA.
    
    Note:  INPUT=PARM-AREA='TESTING' (7 characters in length).
    
    001500 *    DISPLAY TEST-DAT (TEST-LEN:1)
    
    Note:  Uncommenting the line above allows program to execute
           successfully with SSRANGE.  Without it, a failure occurs
           at line 001600.
    
    001600      SET P TO ADDRESS OF TEST-DAT (TEST-LEN:1)
    001700      SET ADDRESS OF X TO P
    001800      DISPLAY X
    001900      GOBACK.
    002000  END PROGRAM SSRANTST.
    ****** **************************** Bottom of Data *************
    
    Sample Error That is Incorrectly Generated:
    
    IGZ0072S A reference modification start position value of 7 on
    line 001600 referenced an area outside the region of data item
    TEST-DAT.
    

Local fix

  • The problem can be resolved, allowing the program to execute
    correctly, using 2 methods:
    1) Use NOSSRANGE
    2) Add a DISPLAY statement (line 1500 in the source code example
    in the "Problem Description") in front of the SET ADDRESS OF
    statement that is generating the abend.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.1 compiling     *
    *                 and running programs using the SSRANGE       *
    *                 compiler option, where the programs have a   *
    *                 SET statement setting a pointer TO ADDRESS   *
    *                 OF a reference-modified LINKAGE SECTION      *
    *                 item that is also variable-length data item. *
    *                                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: Incorrect run-time message:             *
    *                      In some cases when using SSRANGE on a   *
    *                      SET statement setting a pointer TO      *
    *                      ADDRESS OF a reference-modified         *
    *                      LINKAGE SECTION item that is also a     *
    *                      variable-length data item, the          *
    *                      following run time SSRANGE, out of      *
    *                      bounds message is issued even if the    *
    *                      reference-modification does not go      *
    *                      beyond the range of the                 *
    *                      variable-length data item: IGZ0072S A   *
    *                      reference modification start position   *
    *                      value of 7 on line 000016 referenced    *
    *                      an area outside the region of data      *
    *                      item xxxxxxxx.                          *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    *                                                              *
    ****************************************************************
    When using SSRANGE on a SET statement setting a pointer TO
    ADDRESS OF a reference-modified LINKAGE SECTION item that is
    also a variable-length data item the compiler generated
    incorrect instructions that resulted in the incorrect
    generation of the SSRANGE error message at run time.
    

Problem conclusion

  • The compiler was modified to generate code reflecting the
    correct conditions for generating the SSRANGE out of bound
    runtime message.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI67254

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655W3200

  • Reported release

    510

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-08-09

  • Closed date

    2016-08-19

  • Last modified date

    2016-09-02

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

    PI66048

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

Modules/Macros

  •    IGYECNTL
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655W3200

Applicable component levels

  • R510 PSY UI40241

       UP16/08/25 P F608

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

Document Information

Modified date:
02 September 2016