A fix is available
APAR status
Closed as program error.
Error description
IGYPG3113-W Truncation of high-order digit positions may occur. This is seen using FUNCTION MOD or FUNCTION REM with the compile-time option TRUNC(BIN). PICTURE S9(4) COMPUTATIONAL. It is true that the value of the variable may exceed 9999 but TRUNC(BIN) allows that. Therefore there should be no message. If you also see IGZ0036W then truncation happened and the result may be wrong. If you don't see IGZ0036W, then the IGYPG3113 may be ignored.
Local fix
Use TRUNC(STD) or ignore the message.
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL V4.2 who use * * binary data items with TRUNC(BIN) as * * arguments to the intrinsic functions * * INTEGER, INTEGER-PART, MOD, or REM. * * "Binary data items with TRUNC(BIN)" can be * * USAGE BINARY(or COMP or COMP-4) data items * * with the compiler option TRUNC(BIN), and * * also USAGE COMP-5 data items with any TRUNC * * compiler option setting. * * * **************************************************************** * PROBLEM DESCRIPTION: Compile time message: IGYPG3113-W * * Truncation of high-order digit * * positions may occur due to precision of * * intermediate results exceeding 30 * * digits. And, run time message: * * IGZ0036W Truncation of high order digit * * positions occurred in program on line * * number nn. * * For example: * * 01 mxb PIC S9(02) COMP-5. * * 01 myp PIC S9(02) COMP-5. * * 01 rp PIC S9(02) COMP-5. * * Compute rp = function mod(mxp myp) * * * * Will produce the IGYPG3113-W message. * * If mxb or myp contain numbers with * * more than 2 decimal digits the runtime * * message IGZ0036W will be produced. * * * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * * * **************************************************************** The COBOL compiler was not properly expanding the internal description of native binary data items.
Problem conclusion
The COBOL compiler is changed to internally expand the picture of USAGE BINARY items when TRUNC(BIN) is in use. For example a PIC 9(4) USAGE COMP-5 item has to be treated as PIC 9(5) in order to accommodate values in the range 10000 - 65535.
Temporary fix
Comments
APAR Information
APAR number
PM80813
Reported component name
ENT COBOL FOR Z
Reported component ID
5655S7100
Reported release
420
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-01-17
Closed date
2013-03-05
Last modified date
2013-04-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK92246
Modules/Macros
IGYPFNUM
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655S7100
Applicable component levels
R420 PSY UK92246
UP13/03/08 P F303
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":"4.2","Edition":"","Line of Business":{"code":"LOB17","label":"Mainframe TPS"}}]
Document Information
Modified date:
02 April 2013