A fix is available
APAR status
Closed as new function.
Error description
New compiler option NUMCHECK being added
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL V6.1 who want to * * validate PACKED-DECIMAL and BINARY * * (w/TRUNC(OPT) or TRUNC(STD)) data to ensure * * a smooth migration from older COBOL * * compilers. * * * **************************************************************** * PROBLEM DESCRIPTION: There is currently no way to have the * * compiler or generated code validate * * PACKED-DECIMAL or BINARY data, new * * function is needed. * * * **************************************************************** * RECOMMENDATION: Install the provided PTFs and use the new * * NUMCHECK compiler option. * * * **************************************************************** IBM added the ZONECHECK compiler option to help customers find invalid data in numeric DISPLAY (zoned decimal) data items. This APAR will add the NUMCHECK compiler option which will add checking for PACKED-DECIMAL (COMP-3) and BINARY (COMP) data items.
Problem conclusion
Temporary fix
Comments
The new option, NUMCHECK, will replace ZONECHECK and add new capabilities beyond what ZONECHECK provided. If ZONECHECK is specified it will be accepted as NUMCHECK(ZON) The Programming Guide will be changed as follows to describe the new compiler option:: NUMCHECK The NUMCHECK compiler option tells the compiler whether to generate extra code to validate data items when they are used as sending data items. For zoned decimal (numeric USAGE DISPLAY) and packed decimal (COMP-3) data items, the compiler generates implicit numeric class tests for each sending field. For binary data items, the compiler generates SIZE ERROR checking to see whether the data item has more digits than its PICTURE clause allows. NUMCHECK option syntax .-NONUMCHECK---------------------------. >>-+--------------------------------------+---------> '-NUMCHECK--+--------------------------+ | .-,-------------. | | V | | '--(---+-+-ZON---+-+-+--)--' | '-NOZON-' | +-+-PAC---+-+ | '-NOPAC-' | +-+-BIN---+-+ | '-NOBIN-' | '-+-MSG-+---' '-ABD-' Option default is: NONUMCHECK Suboption defaults are: If no suboption is specified, the default is NUMCHECK(ZON,PAC,BIN,MSG). If only one suboption is specified, defaults are NOZON, NOPAC, NOBIN, and MSG. For example, NUMCHECK(BIN) has the same effect as NUMCHECK(NOZON,NOPAC,BIN,MSG). Abbreviations are: NONC | NC ZON | NOZON Specifying ZON causes the compiler to generate code for an implicit numeric class test for zoned decimal (numeric USAGE DISPLAY) data items that are used as sending data items in COBOL statements. PAC | NOPAC Specifying PAC causes the compiler to generate code for an implicit numeric class test for packed decimal (COMP-3) data items that are used as sending data items in COBOL statements. PAC | NOPAC Specifying PAC causes the compiler to generate code for an implicit numeric class test for packed decimal (COMP-3) data items that are used as sending data items in COBOL statements. BIN | NOBIN Specifying BIN causes the compiler to generate code similar to ON SIZE ERROR to test if binary data items contents are bigger than the PICTURE clause when TRUNC(BIN) is not in effect. This extra code will be generated only for binary data items that are used as sending data items, and COMP-5 data items will not get this ON SIZE ERROR code generated. MSG | ABD Determines whether the message issued for invalid data is a warning level message to continue processing or a terminating level message to cause an abend: If MSG is in effect, a runtime warning message with the line number, data item name, data item content, and program name is issued. If ABD is in effect, a terminating message is issued that causes an abend. NUMCHECK(ZON,MSG) is treated as if ZONECHECK(MSG) were in effect. NUMCHECK(ZON,ABD) is treated as if ZONECHECK(ABD) were in effect. The Customization Guide will be changed as follows to describe the syntax of the new compiler option: Syntax .--NO---------------. | .-,-------------. | | V | | >>-NUMCHECK=-+---+-(--+---+-+-ZON---+-+-+-+--)---------------> +-*-+ | '-NOZON-' | +-+-PAC---+-+ | '-NOPAC-' | +-+-BIN---+-+ | '-NOBIN-' | '-+-MSG-+---' '-ABD-' Default: NUMCHECK=(NO)
APAR Information
APAR number
PI71625
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
610
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-11-01
Closed date
2017-02-14
Last modified date
2017-05-03
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
IGYCRCTL
SC27871400 | SC27871200 |
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R610 PSY UI44685
UP17/02/25 P F702
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":"BU048","label":"IBM Software"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.1","Edition":"","Line of Business":{"code":"LOB70","label":"Z TPS"}}]
Document Information
Modified date:
05 September 2024