A fix is available
APAR status
Closed as program error.
Error description
The optimizer incorrectly reuses the constraints on the dividend for the remainder, which can lead to the incorrect elimination of subsequent code involving the remainder.
Local fix
Use OPT(0)
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling and * * running programs at OPT(1|2) with * * DIVIDE...GIVING REMAINDER statements where * * the dividend has minimum value N and code * * following the DIVIDE checks if the * * remainder is either less than N or greater * * remainder is either less than N or greater * * than N. * **************************************************************** * PROBLEM DESCRIPTION: Incorrect output at runtime: The * * compiler incorrectly removes the check * * that the remainder is less than N or * * greater than N following the DIVIDE * * statement. * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * **************************************************************** The compiler assumes the remainder has the range of the dividend, which causes the compiler to remove the check that the remainder is less than N or greater than N following the DIVIDE statement.
Problem conclusion
The compiler was fixed to correctly set the range of values for the remainder, causing it to correctly recognize that the check for the remainder being less than N or greater than N couldn't be safely removed.
Temporary fix
Comments
APAR Information
APAR number
PI90580
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
2017-11-22
Closed date
2017-11-27
Last modified date
2019-04-02
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 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 IGYSIDEK IGYZQDRV
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R620 PSY UP
A
R621 PSY UP
A
R622 PSY UI62021
UP19/03/29 P F903
R62H PSY UP
A
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