A fix is available
APAR status
Closed as program error.
Error description
Unexpected behavior (error messages) received when using ARITH(EXTEND)
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.4 and later * * releases compiling and running programs * * compiled with ARITH(EXTEND) and using * * COMP-2 data types to perform * * exponentiation calculations. * **************************************************************** * PROBLEM DESCRIPTION: When the On Size Error clause is not * * defined, results from exponentiation * * calculations for programs compiled with * * ARITH(EXTEND) behave differently from * * programs compiled with ARITH(COMPAT) * * by producing LE error messages in * * cases where COBOL Runtime warning or * * error messages are expected. * **************************************************************** * RECOMMENDATION: Install the provided PTF. * **************************************************************** There was a logic error in the COBOL Runtime for performing exponentiation calculations using COMP-2 in three cases. When exponentiation calculations were performed using COMP-2 without ON SIZE ERROR, the exponentiation behaviour differed between ARITH(COMPAT) and ARITH(EXTEND) in 3 cases. Case 1 - Base = negative, Power = fractional (eg: 1.24) Case 2 - Base = zero, Power = zero Case 3 - Base = zero, Power = negative In the cases listed above, LE error messages were incorrectly generated causing the program to end. The correct behavior is that the following Run-time messages are generated for these cases: Case 1 - IGZ0048W Case 2 - IGZ0049W Case 3 - IGZ0050S
Problem conclusion
The problem has been corrected. The problem was resolved by improving the COBOL Runtime logic used to perform exponentiation calculates. Now Run-time messages will be printed in these three cases: Case 1 - Base = negative, Power = fractional (eg: 1.24) Case 2 - Base = zero, Power = zero Case 3 - Base = zero, Power = negative This would ensure that ARITH(COMPAT) and ARITH(EXTEND) both have the same behavior when performing exponentiation calculation with COMP-2 data and without On Size Error.
Temporary fix
Comments
APAR Information
APAR number
PH58372
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
640
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2023-11-24
Closed date
2023-12-11
Last modified date
2024-01-25
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PH59402
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 IGYCJBLD IGYCJGEN IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOB2 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 IGYQSPLT IGYZQEN6 IGYZQENU IGYZQJP6 IGYZQJPN
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R640 PSY UI94827
UP23/12/15 P F312
R641 PSY UI94828
UP23/12/15 P F312
R642 PSY UI94829
UP23/12/15 P F312
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":"640","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
25 January 2024