IBM Support

PH62500: UNSTRING WITH UTF-8 DATA ITEMS INCORRECTLY FLAGS OVERFLOW

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • UNSTRING with UTF-8 data items incorrectly flags OVERFLOW
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 5 and later        *
    *                 releases running programs which use          *
    *                 UTF-8 data items as an input parameter to    *
    *                 the UNSTRING statement using the ON          *
    *                 OVERFLOW/NOT ON OVERFLOW phrase.             *
    ****************************************************************
    * PROBLEM DESCRIPTION: COBOL UNSTRING statement using UTF-8    *
    *                      items incorrectly detects the overflow  *
    *                      condition.                              *
    ****************************************************************
    * RECOMMENDATION: Install the provided PTF.                    *
    ****************************************************************
    The incorrect behavior of the UNSTRING statment needs to be
    fixed. For example, the following examples currently produce
    'ACTUAL OUTPUT' (incorrect) while it should produce should be
    'EXPECTED OUTPUT' (correct).
    
    ...
    WORKING-STORAGE SECTION.
    01 WS-STRING PIC U(35)
      VALUE U'GOOD FRIDAY DEAL'.
    01 WS-STR1 PIC U(30).
    01 WS-STR2 PIC U(30).
    01 WS-STR3 PIC U(30).
    ...
    
    = EXAMPLE.1 ==========================
    ...
    INITIALIZE WS-STR1 WS-STR2
    UNSTRING WS-STRING DELIMITED BY U"d"
    INTO WS-STR1
          WS-STR2
          WS-STR3
    OVERFLOW DISPLAY "!!!OVERFLOW"
    NOT OVERFLOW DISPLAY "NO OVERFLOW"
    END-UNSTRING.
    ...
    
    - OUTPUT ---------------------
    ACTUAL OUTPUT: '!!!OVERFLOW'
    EXPECTED OUTPUT: 'NO OVERFLOW'
    
    = EXAMPLE.2 ==========================
    ...
    INITIALIZE WS-STR1 WS-STR2
    UNSTRING WS-STRING DELIMITED BY U"D"
    INTO WS-STR1
          WS-STR2
          WS-STR3
    OVERFLOW DISPLAY "!!!OVERFLOW"
    NOT OVERFLOW DISPLAY "NO OVERFLOW"
    END-UNSTRING.
    ...
    
    - OUTPUT ---------------------
    ACTUAL OUTPUT: 'NO OVERFLOW'
    EXPECTED OUTPUT: '!!!OVERFLOW'
    
    Note. the second example should cause OVERFLOW because
    UNSTRING splits 'good friday deal' into 4 chunks
    ('goo' 'fri' 'ay' 'eal') but there are only 3 receiving fields
    (WS-STR1, WS-STR2, WS-STR3)
    
    
    COB0501T/K COB0502T/K COB0601T/K COB0602T/K COB0603T/K
    COB0604T/K
    

Problem conclusion

  • The COBOL Runtime has been corrected.
    
    Note that the COBOL compiler APAR PH62478 is also available
    to address other problems related to UNSTRING statements
    with USAGE UTF-8 operands. Refer to APAR PH62478 for details.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH62500

  • 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-07-29

  • Closed date

    2024-08-20

  • Last modified date

    2024-09-03

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

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

    UI98093 UI98094 UI98095

Modules/Macros

  • IGZCEV4  IGZCJNI2 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 UI98093

       UP24/08/29 P F408

  • R7D0 PSY UI98094

       UP24/08/29 P F408

  • R7E0 PSY UI98095

       UP24/08/29 P F408

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:
03 September 2024