|
Consider the following code (the print file specs were the result of
CVTRPGSRC):
Fqprint o f 132 printer infds(prntds) oflind(*inoa)
D*
Dprntds ds
D line# 367 368b 0
D*
D fsttim s 1 inz('y')
C if line# > 63 or fsttim = 'y'
When I execute the program I get this error:
Message ID . . . . . . : RNQ0103 Severity . . . . . . . : 99
Message type . . . . . : Inquiry
Date sent . . . . . . : 03/01/08 Time sent . . . . . . :
12:24:27
Message . . . . : The target for a numeric operation is too small to hold
the result (C G D F).
Cause . . . . . : RPG procedure DMPMETRS in program LBFLIB/DMPMETRS at
statement 114
performed an arithmetic operation which resulted in a value that is too
large to fit in the target.
If this is a numeric expression, the overflow could be the result of the
calculation of some intermediate
result.
If I change to the following code:
C line# ifgt 63
C fsttim oreq 'y'
I get no execution error. What's going on here?
Buzz Fenner
Programmer/Analyst
mailto:bfenner@jonesborocwl.org
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.