A fix is available
APAR status
Closed as program error.
Error description
When ZONEDATA(MIG) was in effect, the compiler was generating code to clean/fix the sign nibble of unsigned packed and zone decimal data items prior to them being used as input to compare, add, subtract, multiply and divide operations. This was incorrect because ZONEDATA(MIG) is meant to provide compatibility with the NUMPROC(MIG) option in pre-V5 versions of the Enterprise COBOL compiler and that option prevents that cleaning/fixing from taking place.
Local fix
Use the NUMCHECK(ZON,PAC) option to detect invalid zoned and packed decimal data at runtime.
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling and * * running programs with the ZONEDATA(MIG) * * option in effect, and where the program * * contains unsigned zoned or packed decimal * * data items that may contain an invalid sign * * nibble. * **************************************************************** * PROBLEM DESCRIPTION: Unexpected output. * * The COBOL program will silently clean * * the sign nibble of the data items * * prior to them being used as input to a * * compare operation. This is different * * from the behavior of pre-V5 versions * * of the Enterprise COBOL compiler for * * programs compiled with the * * NUMPROC(MIG) option, where zoned and * * packed decimal data items with an * * invalid sign nibble would typically * * result in a S0C7 abend when used as an * * operand in a comparison. * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * **************************************************************** The compiler was generating code to clean the sign nibble of unsigned packed and zone decimal data items prior to them being used as input to a compare operation, even when the ZONEDATA(MIG) option was in effect, even though ZONEDATA(MIG) is meant to provide compatibility with the NUMPROC(MIG) option in pre-V5 versions of the Enterprise COBOL compiler and that option prevents that cleaning from taking place.
Problem conclusion
The compiler was updated to avoid generating code to clean the sign nibble of unsigned zoned and packed decimal data items prior to them being used as input to a compare operation when the ZONEDATA(MIG) option is in effect.
Temporary fix
Comments
APAR Information
APAR number
PH28379
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
2020-08-11
Closed date
2020-08-20
Last modified date
2020-09-15
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
IGY8CICS IGY8RWRD 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 IGYCOB2 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 IGYZQDRV IGYZQENU IGYZQJPN
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R620 PSY UI71111
UP20/08/29 P F008
R621 PSY UI71112
UP20/08/29 P F008
R622 PSY UI71113
UP20/08/29 P F008
R62H PSY UI71114
UP20/08/29 P F008
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"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"620","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
12 December 2023