On Wed, 11 Oct 2023 15:44:39 +0000, Peter Relson wrote:
>
>As it happens, the offending sentence had already been removed from the 3.1
>book. Since the thread started before those books were generally available to
>be looked at, it's not surprising that that was not realized.
>
I see that. Thanks.
I searched the 3.1 JCL Ref. for "unpredictable". I consider some remaining
instances inexcusable, such as:
Do not code TIME=0 on a JOB statement. The results are unpredictable.
That should just be made a syntax error. I have no sympathy for the
"compatibility" argument.
If there is some uncertainty due to discretization, that should be mentioned
concisely.
As for nested symbols, there should be an edg case example, such as:
// SET X=FOO,Y-BAR
// SET A&X=B&Y
The equivalent JCL would be elaborated as:
// SET AFOO=BBAR
If I guessed wrong, that's a fortiori reason for clarification.
And, abridged from the Ref."
//EXAMPLE PROC SYM1='What''''s up,
Doc?',SYM2=(DEF),SYM3=&&&&TEMP1,
// SYM4='&&TEMP2',SYM5=&&TEMP3,TEMP3=TEMPNAME,
// SYM6=&TEMP3
...
//DD3 DD DSN=&SYM5,UNIT=SYSDA,SPACE=(TRK,(1,1))
//DD4 DD DSN=&SYM6,UNIT=SYSDA,SPACE=(TRK,(1,1))
//DD5 DD DSN=&TEMP3,UNIT=SYSALLDA,SPACE=(TRK,(1,1))
...
The equivalent JCL produced by the substitution, when the procedure is
expanded, is:
...
//DD4 DD DSN=&TEMP3,UNIT=SYSDA,SPACE=(TRK,(1,1))
(It fails to show the equivalent JCL for DD5.)
It would be a valuable clarification to state that DD4 names a
temporary data set. I think.
• Symbols on JCL records are treated as if they resolved simultaneously.
I'll assume the contrapositive: Symbols on different JCL records
(It says "record", not "statement") are resolved sequentially.
So SYM6 should receive the value "TEMPNAME".
--
Thanks,
gil
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN