<snip>
As a general rule for LIST/EXECUTE form macros, avoid coding anything else 
on the execute call except for E. The reason is that the LIST call 
determines what data needs to be included in the generated code 
</snip>

Not for macros written in the base control program (and elsewhere) in the 
past 30 years. For most of them, nothing can be specified on the list 
form, aside from PLISTVER. And for all macros, any parameter that has 
other than a static value must be specified on the execute form.

<snip>
Eschew MF=(E,...,COMPLETE) ? 
</snip>

Of course not. COMPLETE is the default and is the only thing accepted 
unless the macro documents that it supports the "M" form.

<snip>
Something that resolved to "I don't support parmlist version > 2,
and you gave me a 3."
</snip>

You should know what you "gave", as it is perfectly visible in the 
expansion. And the reason code says exactly that aside from what is the 
maximum you do support, which is not important to know.

Both "bad version" and "reserved field not 0" are typical of asking for 
"new function" via a "new release" level of the macro and running on "old 
release".
I hope everyone understands that they must avoid doing that. Charles fell 
into the subtle case that specifying PLISTVER=MAX in effect is saying "I 
am using new function".

Peter
rel...@us.ibm.com 
     1-845-435-8390            8+295-8390


----------------------------------------------------------------------
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