A fix is available
APAR status
Closed as program error.
Error description
UNSTRING with UTF-8 data items incorrectly flags OVERFLOW for AMODE64
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.3 and later * * releases running AMODE 64 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 * * data 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) 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
PH62501
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:
UI98097 UI98098 UI98099
Modules/Macros
CELQSG04 CELQV004 IGZQAPI IGZQCA64 IGZQCDA IGZQINPL IGZQJNI2
Fix information
Fixed component name
LE ENT COBOL LI
Fixed component ID
568819812
Applicable component levels
R7C0 PSY UI98097
UP24/08/29 P F408
R7D0 PSY UI98098
UP24/08/29 P F408
R7E0 PSY UI98099
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