Well, as I said, the HLASM manual says that immediate operands must be absolute 
expressions, so end of story it seems. OTOH LARL handles both relative and 
external, if not functionally exactly the same. (My point was actually that you 
can't put A(), V(), F' ' etc. into an expression, they are not self-defining 
terms, like C'  ', B'  ', X'  '.)

-----Ursprüngliche Nachricht-----
Von: IBM Mainframe Assembler List [mailto:[email protected]] Im 
Auftrag von Robert A. Rosenberg
Gesendet: Dienstag, 19. November 2013 01:37
An: [email protected]
Betreff: Re: Relative Branches / IBM macros

At 09:38 +0000 on 11/18/2013, David Stokes wrote about Re: Relative Branches / 
IBM macros:

>Peter Relson wrote: For LLILF I would have said no since the LLILF
>operand is an "immediate".
>
>Well, I don't agree. Immediate operands are absolute expressions.
>Witness the fact that you get the "Symbol A undefined" error just the
>same writing say
>
>          CLI  label,A(123)
>
>(or AL1 for that matter), whereas LLILF clearly recognizes the symbol
>as being external/relocatable, but doesn't like that. It happily
>accepts say
>
>XX    DS     0H
>
>          ......
>
>          LLILF  R15,XX-*
>
>(whatever sense that might make).

I think it is choking on the symbol being an external not just a relocatable. 
The latter it can compute. It might be interesting to see what happens if XX is 
in a different CSECT from the LLILF (ie:
Will it accept it and adjust for the fact that the offset to the CSECT is 
unknown until Bind Time - you know the offset in the assembly but the Binder 
may move the 2 CSECTs apart).

Reply via email to