IBM Support

PI95093: Assigning a LENGTH OF value to a group item moves the binary LENGTH OF value into the group, unlike the v4.2 compiler

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • For the v4.2 and earlier compilers, moving the LENGTH OF an item
    to a group item first converts the LENGTH OF value to a display
    numeric before moving it into the group. The v5+ compilers
    forego that conversion, and move the binary LENGTH OF value into
    the group item. (In both cases, the rest of the group item is
    padded with blanks.)
    

Local fix

  • Avoid directly moving LENGTH OF into a group item.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling and  *
    *                 running programs that contain a MOVE         *
    *                 statement having a group item as a receiver  *
    *                 and the LENGTH OF special register as a      *
    *                 sender.                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: Possible unexpected runtime results.    *
    *                      The LENGTH OF special register is       *
    *                      moved to the group item without any     *
    *                      conversions, which is different from    *
    *                      code generated by pre-V5 versions of    *
    *                      the compiler.                           *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    ****************************************************************
    Versions of the compiler after V42 generate different code for
    moves from the LENGTH OF special register to a group item.  In
    particular, no conversions of any kind are done on the value of
    the LENGTH OF special register prior to the move.  This is the
    correct behavior, but since it differs from earlier versions of
    the compiler, users need to be aware of the difference and
    examine their code to determine if changes are necessary.
    

Problem conclusion

  • The compiler was updated to generate a warning message for move
    operations involving a group item as a receiver and the LENGTH
    OF special register as a sender.  This helps users identify
    potentially problematic code and re-write it, if necessary, in
    order to ensure the intended behavior.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI95093

  • 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

    2018-03-13

  • Closed date

    2018-03-15

  • Last modified date

    2018-04-03

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

    PI94399

  • 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 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  IGYWCL   IGYWCLG  IGYZQDRV IGYZQENU
    IGYZQJPN
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655EC600

Applicable component levels

  • R620 PSY UI54510

       UP18/03/28 P F803

  • R621 PSY UI54511

       UP18/03/28 P F803

  • R622 PSY UI54512

       UP18/03/28 P F803

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