In a recent note, "Shmuel Metz (Seymour J.)" said:
> Date: Fri, 27 Oct 2006 16:14:29 -0300
>
> No. Read the code.
>
Is it available or OCO?
> >Is there any rationale for permitting three leading zeroes, but not
> >four as long as the resulting numeric value is within range?
>
> Avoiding extraneous code changes.
>
> >It merely adds a few instructions to some code path
>
> No it doesn't. The code is generic, and adding a special test would
> increase the path length.
>
I'd accept that if you could persuade me that there's a "generic"
routine or macro used by the converter for all numeric conversions,
and the only test it makes is on number of digits. For example,
I find it accepts "BLKSIZE=99999". But I tried various values
of REGION. z/OS 1.7 accepts "REGION=2096128K" but fails on
"REGION=2096129K" with
IEF638I SPECIFIED NUMERIC EXCEEDS MAXIMUM ALLOWED IN THE REGION FIELD.
So, apparently, the reader does check for specific numeric values
beyond enforcing field width limits, and since such code exists, if
it were "generic" it would apply only a numeric limit and ignore
superfluous leading zeroes.
BTW, what's the rationale for the maximum of 2096128K?
2096129 = 0x1FFC01, and 2096129*1024 = 0x7FF00400, which fit
comfortably in 21-bit and 31-bit fields, respectively. It seems
to me that the reasonable choice of limit would be 2097151, since
2097151*1024 = 0x7FFFFC00, the largest multiple of 1024 that can
be represented in 31 bits (2097151 = 0x1FFFFF).
-- gil
--
StorageTek
INFORMATION made POWERFUL
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html