A fix is available
APAR status
Closed as program error.
Error description
A called program may return to an incorrect location when it is called by multiple programs
Local fix
Compile with OPT(0)
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling * * programs as a batch compilation where one * * program statically calls another non-nested * * program more than once and the called * * program contains a GOTO to a paragraph or * * section within or PERFORMs a paragraph or * * section. * **************************************************************** * PROBLEM DESCRIPTION: Execution within a called program * * could incorrectly transfer to another * * copy of that called program. * **************************************************************** * RECOMMENDATION: Apply the provided PTF * **************************************************************** The compiler may inline smaller programs into their caller, replacing the call statement with the body of the called program. This allows for more optimization opportunities and increases performance by getting rid of the overhead of calling a program. Labels created from paragraph or section names must be unique in a program, so if a called program is inlined two or more times into the same caller, the compiler created only one label for the multiple copies. This meant that branches to a paragraph or section name in any of the copies would end up at the label in the first copy, changing the program's flow of execution.
Problem conclusion
The compiler was fixed to only inline a program into its caller once.
Temporary fix
Comments
APAR Information
APAR number
PH41165
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
2021-10-06
Closed date
2021-10-21
Last modified date
2021-11-10
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 IGYCOB2E IGYCOPI IGYCOPT 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 UI77740
UP21/10/30 P F110
R621 PSY UI77741
UP21/10/30 P F110
R622 PSY UI77742
UP21/10/30 P F110
R62H PSY UI77743
UP21/10/30 P F110
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