On Thu, 14 Feb 2019 10:02:26 -0800, Charles Mills wrote:
> ...
>I have a started PROC with the typical sort of symbols declared on the PROC
>statement.
>...
>The second step contains //stepname EXEC PGM=program,PARMDD=MYDDNAME
>
>//MYDDNAME DD *,SYMBOLS=JCLONLY
>
>I have a // EXPORT SYMLIST=*. I tried it before the first step, in the first
>step, and in the second step.
> 
The JCL Ref. says:
    Chapter 17. EXPORT statement
    Purpose: Use the EXPORT statement to make specific JCL symbols
    available to the job step program.

I suspect that "JCL symbols" means SET symbols but excludes PROC args.
IBM makes too damned many rules.  A name should be a name, whether
SET or a PROC arg.
> ...
>The start fails with a JCL error and IEFC657I THE SYMBOL xxxxx WAS NOT USED
>for every single one of the symbols.
> ..
Tnat message has struck me as insane design since I first encountered it
over 40 years ago.  Completely backwards.  What sane language designer
would allow reference to an undefined symbol but fail definition a symbol
with no references.  (Perhaps a warning, not an error, on the latter would
be a courtesy to the programmer.)

>What am I doing wrong? Or is the big picture of what I am attempting to do
>hopeless?
> 
No more hopeful than an RFE to straighten out the whole mess.

And did you know that if a symbol is SET to different values before and
after the DD * statement, the one *after* is used!?

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to