A fix is available
APAR status
Closed as program error.
Error description
To reduce memory usage, the optimizer will reuse compiler temporary variables. In some cases, such as the result of alphanumeric functions in an expression like if function upper-case(string1(i:1)) = function upper-case(string2(i:1)) the same temporary variable is incorrectly used for both function instances, with the result that the expression is never true.
Local fix
Compile at OPT(0).
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL V6.2 compiling * * programs that compare the result of two * * FUNCTIONs in the same statement. * **************************************************************** * PROBLEM DESCRIPTION: The comparison may always treat the two * * results as equal. * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * **************************************************************** The compiler initially assigns a unique temporary when a FUNCTION produces a result, as well as in many other cases. To reduce the overall number of temps, the compiler reuses temps that aren't used at the same time in the same statement. When mapping temps, the compiler wasn't correctly identifying temps used for the result of some FUNCTIONs as being used in the same statement.
Problem conclusion
The compiler was fixed to recognize temps used for FUNCTION results in the same statement and avoid mapping them to the same temp.
Temporary fix
Comments
APAR Information
APAR number
PH20127
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
2019-12-10
Closed date
2020-02-13
Last modified date
2020-03-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 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 UI67889
UP20/02/22 P F002
R621 PSY UI67890
UP20/02/22 P F002
R622 PSY UI67891
UP20/02/22 P F002
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