Ref: Your note of 7 June 2013, 21:44:26 EDT
Hi Mark,
I don't think there is any documentation specifically covering
this case.
>From checking the internals, it appears that nested macro
instruction definition lines within another macro are not
classified as "generated code", as they are merely being stored
as a new macro definition at the time, so the lines would only
could as "generated code" when the nested macro was being
interpreted. This means that they do not get a "+" prefix,
which then means that PRINT NOGEN does not suppress them.
If you normally don't want to see them, you can quietly suppress
them using PRINT options around the nested macro:
PUSH PRINT Hide nested macro definition
PRINT OFF,NOPRINT
MACRO
...
MEND
POP PRINT
I'd agree that this behavior does seem a bit surprising, and
could at least be clarified in the documentation. If you think
there is an additional requirement to change the behavior or
provide an enhancement in this area, please submit an RFE.
However, as nested macro instructions are rare and the above
technique can be used to hide them, I'd hope that clarification
in some future level of the documentation would be sufficient.
Jonathan Scott
HLASM Development, IBM Hursley, UK
Mark Boonie wrote:
> I have a macro that generates other macros as well as DSECTs, equates, etc.
> If I issue PRINT NOGEN and then invoke the macro in order to define the new
> macros, the lines that comprise the new macros appear in the listing, even
> though the DSECT and equate definitions are suppressed. Is this the
> intended behavior? If so, is it documented anywhere? Thanks.
>
> - mb