IBM Support

PH60007: INCORRECT RESULT FOR MOVE WITH A UTF-8 REFERENCE-MODIFIED RECEIVER

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • MOVE statement fails to move correct values to a UTF-8
    referenced-modified receiver.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 5 and later        *
    *                 releases running programs which use          *
    *                 COBOL MOVE statements with a UTF-8           *
    *                 receiver reference-modified.                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: MOVE statement fails to move            *
    *                      correct values to a UTF-8 receiver      *
    *                      referenced-modified.                    *
    *                                                              *
    *                      NEW FUNCTION.                           *
    ****************************************************************
    * RECOMMENDATION: Install the provided PTF.                    *
    ****************************************************************
    When a MOVE receiver meets all of the following conditions,
    incorrect values might be moved.
    
    - Receiver is a UTF-8 data item reference-modified
    - Receiver is greater than 256 bytes (e.g. PIC U(65) or bigger)
    - MOVE causes a right-shift of existing bytes in the receiver
    - The reference modification is not within the last 256 bytes
      of the receiver
    
    For example, the following code results in incorrect values
    moved to UTF8-LONG while the value is UTF8-SHORT
    is correct.
    
    IDENTIFICATION DIVISION.
    PROGRAM-ID. UTFDEMO.
    DATA DIVISION.
    WORKING-STORAGE SECTION.
    01 UTF8-SHORT PIC U(64).
    01 UTF8-LONG  PIC U(65).
    PROCEDURE DIVISION.
       MOVE 'ABCDEF' TO UTF8-SHORT
       MOVE X'FC' TO UTF8-SHORT(2:1)
    
       MOVE 'ABCDEF' TO UTF8-LONG
       MOVE X'FC' TO UTF8-LONG(2:1)
       GOBACK.
    
    COB0501T/K COB0502T/K COB0601T/K COB0602T/K COB0603T/K
    COB0604T/K
    

Problem conclusion

  • The COBOL Runtime has been corrected to handle UTF-8 data items
    longer than 256 bytes.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH60007

  • Reported component name

    LE ENT COBOL LI

  • Reported component ID

    568819812

  • Reported release

    7E0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2024-02-26

  • Closed date

    2024-03-19

  • Last modified date

    2024-04-01

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

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

    UI96134 UI96135 UI96136

Modules/Macros

  • IGZBALCT IGZCEV4  IGZCJNI2 IGZCMGEN IGZCMGUE IGZEDCCT IGZIBMCT
    IGZIGZCT IGZLLIBV IGZXAPI  IGZXCA31 IGZXCDA  IGZXD24  IGZXDMR
    IGZXJNI2 IGZXLPIO IGZXLPKA IGZXLPKB IGZXLPKC IGZXLPKD IGZXLPKE
    IGZXLPKF IGZXLPKG IGZXPK2
    

Fix information

  • Fixed component name

    LE ENT COBOL LI

  • Fixed component ID

    568819812

Applicable component levels

  • R7C0 PSY UI96134

       UP24/03/28 P F403

  • R7D0 PSY UI96135

       UP24/03/28 P F403

  • R7E0 PSY UI96136

       UP24/03/28 P F403

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":"BU048","label":"IBM Software"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7E0","Line of Business":{"code":"LOB70","label":"Z TPS"}}]

Document Information

Modified date:
04 April 2024