"Retired mainframer" noted: >I must be missing something obvious. Why not simply > > MACRO > &Lab MVC2 &Target,&Source > &Lab MVC &Target(L'&Source-1),&Source > MEND > >or avoid the macro completely with > > &Lab MVC Label1(L'Label2-1),Label2
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
