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
