Replying to everyone at once.

> Since they're in different CSECTs, the assembler will need to generate ESD
and RLD 
> entries since a Binder ORDER statement may muddle any relation between the
addresses.

Assembler and binder do it all the time. Every instance of EXTRN FOO/DC
A(FOO)

> But are long displacements relocatable?
> But can it depend on the target's being within even long displacement
reach?

No long displacement in the picture. 

> Maybe because your CSECT has not a USING for relocatable symbols.. 

USING applies to base-displacement situations. No base-displacement here.

> If you use an absolute value for an instruction you don't need any
relocatable value.

Would seem to be a truism, no?

Charles
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Paul Gilmartin
Sent: Tuesday, December 27, 2016 5:32 PM
To: [email protected]
Subject: Re: ASMA032E Relocatable value or unresolved symbol found when
absolute value required

On 2016-12-27 18:01, Charles Mills wrote:
> Why won't this assemble?
> 
> SOME  CSECT
>       LLILF 2,FOO
> OTHER CSECT
> FOO   EQU   *
> 
> Why do I get ASMA032E Relocatable value or unresolved symbol found 
> when absolute value required - FOO?
> 
> Can't the assembler generate a relocatable address constant for the 
> immediate operand of LLILF? Or am I doing something stupid that I am 
> not seeing?
>  
Since they're in different CSECTs, the assembler will need to generate ESD
and RLD entries since a Binder ORDER statement may muddle any relation
between the addresses.  But are long displacements relocatable?
        
> DC A(FOO) at the same spot assembles with no problem. I could 
> presumably code DC X'C02F',AL4(FOO) and it would execute correctly.
>  

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to