On 5/16/2012 3:39 PM, John Ehrman wrote:
The reason for the more complex macro is that the source operand may
have been encountered by the assembler for the first time in the MVC
instruction, and not yet appear in the symbol table with all
attributes assigned (particularly, length), so the L' reference might
fail. (This can happen easily with literal operands.) The purpose of
the LA instruction in the macro is to force the &Source operand into
the symbol table in case it's not there already. John Ehrman
So then this simpler variation ought to work:
Macro
&Lab MVC2&Target,&Source
&Lab MVC&Target(0),&Source X'D200',S(&Target),S(&Source)
Org *-5 Back up to length field
DC AL1(L'&Source-1) Overlay source length (-1)
Org *+4 Step to next instruction
MEnd
Ray...