A fix is available
APAR status
Closed as program error.
Error description
At OPT(0), the compiler generates compare code based on known compile time comparand lengths, using proxy comparand items to account for the blank padding of the shorter comparand. With an invalid reference modification whose length exceeds the defined length of the longer comparand, copying the actual comparand into the proxy item will possibly overlay memory following the proxy. This can lead to incorrect results or an abend0c4 elsewhere in the compile unit.
Local fix
Do not use coding practices that rely on invalid reference modifications.
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL V6.2 compiling * * programs at OPT(0) that compare PIC X(1) * * LINKAGE SECTION data items using a * * reference modification with length greater * * than one to figurative constants like * * SPACES. * **************************************************************** * PROBLEM DESCRIPTION: The compiler generates code that may * * compare only the first byte of the * * data item. * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * **************************************************************** The compiler was generating code under the assumption that since the data item was PIC X(1), only one byte needed to be compared.
Problem conclusion
The compiler was fixed to always compare the number of bytes specified in the reference modification.
Temporary fix
Comments
APAR Information
APAR number
PI95028
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-12
Closed date
2018-03-15
Last modified date
2018-04-04
APAR is sysrouted FROM one or more of the following:
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