I suspect that relocating FOO to be in CSECT SOME would not assemble
either, because it is the value of offset '*' that is not absolute (well
at least not when the source code is still being assembled).

Have you tried assembling this?

SOME  CSECT
      LLILF 2,FOO
FOO   EQU   *
OTHER CSECT


On 28/12/2016 03:45, Charles Mills wrote:
> 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
> .
> 

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

Reply via email to