On 6/9/2018 2:24 PM, Ed Jaffe wrote:
On 6/6/2018 8:51 AM, Steve Smith wrote:
This has been previously discussed. The main issue (as usual) is
incompatibility with an ancient bug (or feature). Specifically,
temporary
dataset names such as DSN=&TMP. That's supposed to be DSN=&&TMP, but for
whatever reason, the single-& version works, unless &TMP is a symbol.
Wow! I confirmed this is an exposure! I never knew!
IBM does not mention the single ampersand being valid temporary data set
name syntax in the description of the DSNAME parameter on the DD
statement and I have previously not seen it used that way.
https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.ieab600/iea3b6_Syntax25.htm
This reminds me of the rule in REXX where use of an uninitialized
variable results in the variable name itself being substituted. But,
that is documented behavior. This is just plain wrong.
It might be a good use of the common tracker component (GTZ) to help
identify JCL with such errors. Otherwise, every new symbol added -- to
the system, to a proc, to anything that might have visibility to a job
stream -- can lead to unexpected JCL errors.
That's not a bug, that's a FEATURE!
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN