A fix is available
APAR status
Closed as program error.
Error description
When moving from a PIC 9(18) COMP-5 (unsigned doubleword native binary) item to another item of the same attributes, the compiler generates a lengthy conversion to packed decimal and back to binary. While the results are correct, this holdover from earlier compilers is redundant for native binary and could be replaced by a simple direct move for better performance. This conversion process may also lead to intermediate value truncation taking place, which in contexts where hardware overflow is enabled can lead to noticeably poor performance at ARCH(12), due to the runtime needing to ignore the overflow per COBOL semantics.
Local fix
Compile at ARCH(11)
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.3 compiling and * * running programs that contain a MOVE * * statement involving a COMP-5 sender with a * * decimal precision of 0 and an integer * * precision of at least 10 and a COMP-5 * * receiver of any valid precision. * **************************************************************** * PROBLEM DESCRIPTION: Compiler issues warning messages * * 'MSGIGYCB7318-W A reference-modifier * * start value exceeded the number of * * characters in X' or 'MSGIGYCB7317-W * * A reference-modification length value * * caused reference to be made beyond the * * rightmost character of X'. * **************************************************************** * RECOMMENDATION: Apply the IBM-provided PTF. * **************************************************************** The compiler was generating unnecessary conversion of the COMP-5 sender to packed decimal and eventually back to binary as part of the move operation.
Problem conclusion
The compiler has been updated to avoid generating unnecessary conversions for moves involving COMP-5 senders and receivers that have a decimal precision of 0.
Temporary fix
Comments
APAR Information
APAR number
PH25371
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
630
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2020-05-13
Closed date
2020-05-20
Last modified date
2020-06-01
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 IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOB2E 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 IGYQSPLT IGYZQEN6 IGYZQENU IGYZQJP6 IGYZQJPN
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R630 PSY UI69624
UP20/05/27 P F005
R631 PSY UI69625
UP20/05/27 P F005
R632 PSY UI69626
UP20/05/27 P F005
R63H PSY UI69627
UP20/05/27 P F005
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":"630","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
12 December 2023