Hi!

 Oh yes - there are several situations in GOFF that don’t translate.

 In some cases there would be a warning/error.  

 But, for some situations if we’re doing the ‘linking’ - we can just handle it. 
 For example,
 if you’re producing an unloaded VSE phase - that is one large object deck with 
everything
 already laid out, so we can apply the ALIGN(16) when laying it out.  The VSE 
linker
 does very little with the result, most “linking” has been done.   Same thing 
for a TSO 
 transmit file (where we are doing all the linking.)

 But, if we’re generating a regular OBJ file, then we will say “hey - that 
won’t work” and
 bail out.

 By the way - I’m not sure I agree with ignoring an ALIGN(16) in a DSECT.   The 
assembler
 can’t know what offset will be USEd for referencing the DSECT fields, and thus 
can’t
 make the assumption that the ALIGN(16) is at all meaningful.   Of course, you 
could also
 make the claim that “hey - I’m telling you this DSECT will _always_ be 16-byte 
aligned
 with this ALIGN(16), so if it’s not, it’s my fault”.   I can see both sides of 
that…

     - Dave R. -


--
[email protected]                        Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com




> On Jan 5, 2016, at 3:46 PM, Paul Gilmartin 
> <[email protected]> wrote:
> 
> On 2016-01-05 12:35, Ed Jaffe wrote:
>> 
>> I agree it would be nice to be able to insert a job step on the z/OS side to 
>> transform a GOFF object into something consumable by z/VSE -- either object 
>> deck or phase.
>> 
> HLASM can generate either GOFF or traditional object format.  You need GOFF 
> only if
> you're using a feature not supported by traditional format, in which case 
> transforming
> to traditional format sacrifices that feature.
> 
> But an exception should be made for ALIGN(16) in DSECTs.
> 
> What does Dignus do translating GOFF with ALIGN(16) to traditional object.
> It should issue at least a warning.
> 
> -- gil
> 

Reply via email to