A really unfortunate limitation. Makes no logical sense to me why the
assembler has this limitation.

The only problem I could see would be what about nested literals? Would
users expect to be able to coe

L 1,=A(=X'123))

If S-constants will work for you, then you can fake them with
pseudo-executable instructions. Instead of

DC A(=X'123')

Generate

L 0,=X'123'

If you have a USING for R0 on your literal pool, then the above will
generate a 4-byte instruction. Ignore the first two bytes, and the second
two bytes are your S-Con.

Charles


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]]
On Behalf Of Windt, W.K.F. van der (Fred)
Sent: Friday, December 8, 2017 7:40 AM
To: [email protected]
Subject: Re: Address of a =LITERAL

> It is illogical that this does not work but that is the way it is.
> 
> Do S-constants work? That is, is S(=x'123') valid, and might that work for
you?
> 
> Do you have to use literals? Can you use named constants instead?
> 
> Charles

The S-constants seem to have the same limitation:

0000006                               17          DC   S(=C'0')         
 ** ASMA030E Invalid literal usage - =C'0')                             
 ** ASMA435I Record 17 in NDV.E.RUS.AASM.BASE(FQMTEST) on volume: O0N005

-----------------------------------------------------------------
ATTENTION:
The information in this e-mail is confidential and only meant for the
intended recipient. If you are not the intended recipient, don't use or
disclose it in any way. Please let the sender know and delete the message
immediately.
-----------------------------------------------------------------

Reply via email to