The conditional assembly language is very simplistic and one aspect is that it does NOT rescan. So if you code a SETC variable in a model statement as the opcode, then that is what it will expect in that variable - just the opcode. If you have extra data in the SETC value - as in this case the operands - then the assembler will be looking for an opcode of 'SR 15,15' and then you get the error message. If you want to create an machine instruction with a label, opcode and operands, each one needs to be in its own SETC variable
&label SETC 'label' &opcode SETC 'SR' &operands SETC '15,15' &label &opcode &operands This little snippet will work as expected while this will not &instruction SETC 'label SR 15,15' &instruction Kind regards John Dravnieks (former HLASM developer)
