No, P1 is defined on the macro template.

        MACRO
&LABEL  TESTMAC &P1=,&P2=,&P3=,&P4=,&P5=,&P6=

It shouldn't need any further definition.


Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
[email protected]


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]] On 
Behalf Of Jon Perryman
Sent: Sunday, April 01, 2012 2:25 PM
To: [email protected]
Subject: Re: Macro compound symbols

You didn't set or define variable P1. Message  ASMA300E tells you that variable
P1 is not set (notice the TESTM/P1)

Regards, Jon.



________________________________
From: "Hardee, Chuck" <[email protected]>
To: [email protected]
Sent: Sun, April 1, 2012 10:07:23 AM
Subject: Macro compound symbols

Hello,

Thru the IBM Mainframe list I have been able to get the assembler to accept the
following as valid:

&VARNAM SETC  'P'.'&I'
&XVAL   SETC  '&(&VARNAM)'

&XVAL is defined as LCLC

This statement:
        MNOTE 'VARNAM=&VARNAM'
results in the following in the assembly listing:
        +VARNAM=P1
so it appears that the creation of the compound variable name is working
(compound being defined as the building of a variable name using two or more
parts at runtime.)

However, this statement:
&XVAL   SETC  '&(&VARNAM)'
results in the following in the assembly listing:
** ASMA003E Undeclared variable symbol; default=0, null, or type=U - TESTM/P1
** ASMA435I Record 44 in S01CH.MISC.MACLIB(TESTMAC) on volume: TECH27
(and I might add that I get the same warning for the remaining variables, P2,
P3, P4 P5 and P6)

Which makes no sense since the macro is defined:
        MACRO
&LABEL  TESTMAC &P1=,&P2=,&P3=,&P4=,&P5=,&P6=

Which, unless I've missed something, defines P1, P2, etc.

Can anyone shed some light on why the assembler would think that the variables
P1 thru P6 would be thought of as not defined when they are clearly defined in
the MACRO template?

Thanks,
Chuck

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
[email protected]

Reply via email to