------- Additional Comments From macro at linux-mips dot org  2005-06-07 18:16 
-------
> >  Of course it changes the ABI -- if any member of a record (which is an
> > equivalent to a C structure) gets its alignment increased, then the 
> > alignment
> > of the containing record (structure) gets adjusted appropriately.
> 
> Sure, but since all records of this type will be laid out the same way, where 
> is
> the problem?  This only happens for packed records or records with

 After a short consideration I agree -- it would only be a problem if the case
was reversed, i.e. standalone records got their alignment bumped while member
oned did not.

> representation clauses, both not bound to any ABI rules as far as Ada is
concerned.

 Well, there may be no written standard for this case, but there is always an
ABI, even if limited to GCC.

> > If I understand code correctly compute_record_mode() should still be able to
> > use one of the integer modes for platforms that don't care about alignment.
> 
> x86 is not (yet) the only platform out there. :-)

 Well, you may have noticed I'm already aware of this -- otherwise I wouldn't
have filed the report in the first place.  But the problem is the i386 is
probably the architecture most code is primarily tested with and unfortunately
it has quite forgiving restrictions about alignment.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21937

Reply via email to