IBM Support

PI33414: COBOL R/T ENHANCEMENT FOR DEBUG

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as new function.

Error description

  • COBOL runtime enhancement.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: IBM Debug Tool users debugging COBOL for     *
    *                 z/OS programs that have subscript or index   *
    *                 values that are outside the boundary of the  *
    *                 maximum occurrence defined in the OCCURS     *
    *                 clause, and are using the LIST command or    *
    *                 other Debug Tool commands using such data    *
    *                 items.                                       *
    *                                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: No data is returned, only an error      *
    *                      message, in response to a Debug Tool    *
    *                      command in the following cases:         *
    *                                                              *
    *                      - When the value of the OCCURs object   *
    *                        exceeds the maximum defined in the    *
    *                        OCCURS DEPENDING ON clause for the    *
    *                        element referenced.                   *
    *                                                              *
    *                      - When a subscript value exceeds the    *
    *                        maximum defined in an OCCURS          *
    *                        DEPENDING ON Clause                   *
    *                                                              *
    *                      - When an index value is used with a    *
    *                        structure element where the value in  *
    *                        the index is not a multiple of the    *
    *                        length of the element where it is     *
    *                        used. ( The index is used with a      *
    *                        structure other than where it was     *
    *                        defined.)                             *
    *                                                              *
    *                      A message indicating the ODO object,    *
    *                      subscript or index is invalid is        *
    *                      issued.                                 *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    *                                                              *
    ****************************************************************
    When running COBOL programs with the Debug Tool the boundary of
    the maximum defined occurrence is enforced. Users are unable to
    list data beyond the upper bounds of the OCCURS definition.
    
    This code is invalid, but may compile without errors and
    run successfully. Debug Tool enforces valid code, but may
    interfere with some users attempting to debug code where they
    are successfully running the invalid code.
    

Problem conclusion

Temporary fix

Comments

  • This enhancement reduces enforcement of restrictions on invalid
    coding styles that were previously enforced while debugging. A
    user must take steps to use these enhancements and be aware
    that relieving the restrictions may result in unexpected results
    if care is not taken to ensure values are valid in the users
    execution context.
    
    This enhancement allows:
    
    - The return of data when an OCCURS DEPENDING ON object is
      greater than the maximum occurrence value defined in the
      OCCURS DEPENDING ON clause.
    
    - The return of data when a subscript or index value references
      table elements beyond the maximum boundary defined in the
      OCCURS DEPENDING ON clause. It will not allow returning data
      in cases where the subscript or index exceeds the value of the
      ODO Object.
    
    - It will allow the use of an index value with a structure other
      than the one where it was defined, even when the index value
      is not a multiple of the length of the table element it is
      being used to reference.
    
      When the index value is not a multiple of the structure
      element length, the index value will be used as the offset and
      the length of the index parent will be used to determine the
      subscript value equivalent of the index value that will be
      displayed in the output.
    
    The use of this function may result in unexpected output if
    the OCCURS OBJECT and any index value is not initialized
    correctly prior to being used in a statement.
    In particular, care must be taken when running with AUTOMONITOR
    as it may cause COBOL to attempt to resolve a structure with an
    uninitialized ODO OBJECT.
    
    Invalid or uninitialized values may result in abends, invalid
    and/or excessive data being returned.
    
    These enhancements are supported for programs compiled with the
    following compilers:
    IBM COBOL for OS/390 & VM             V2R2
    Enterprise COBOL for z/OS and OS/390  V3R1 - V3R4
    Enterprise COBOL for z/OS             V4R1 - V4R2
    
    See Debug Tool APAR PI33422 for additional information on the
    EQAXOPT option IGNOREODOLIMIT YES which will allow the
    enhancements shipped in this APAR to be activated.
    

APAR Information

  • APAR number

    PI33414

  • Reported component name

    LE COBOL LIB

  • Reported component ID

    568819802

  • Reported release

    780

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    YesSpecatt / New Function / Xsystem

  • Submitted date

    2015-01-23

  • Closed date

    2015-05-07

  • Last modified date

    2015-06-01

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

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

    UI27453 UI27454

Modules/Macros

  •    IGZICA2  IGZIIRS  IGZINSH
    

Fix information

  • Fixed component name

    LE COBOL LIB

  • Fixed component ID

    568819802

Applicable component levels

  • R780 PSY UI27453

       UP15/05/15 P F505

  • R790 PSY UI27454

       UP15/05/15 P F505

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.

[{"Line of Business":{"code":"LOB16","label":"Mainframe HW"},"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG27M","label":"APARs - z\/VM environment"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.8"}]

Document Information

Modified date:
22 January 2021