> Uh.  When is a field a bit field though?  At least stor-layout.c
> resets DECL_BIT_FIELD
> when local relative alignment is "proper" and the filed has an integer
> mode.  That's
> overly optimistic if the record is placed at a bit position.  Of
> course we still have
> DECL_BIT_FIELD_TYPE, but I wonder what the DECL_BIT_FIELD flag is for if
> we cannot really know whether the field in the end is a "bitfield"
> anyway... (what value do the various field-decls in a component-ref chain
> have anyway if the real interpretation is subject to the containing object,
> which might be even only
> specified by the type used for an indirect ref ...)

We're talking about a bit field with record type here, so anything calculated 
within the record type in isolation is essentially invalidated for the bit 
field in question.  Fortunately this only occurs in Ada, which doesn't use the 
very questionable C++ memory model (fingers crossed for the future. :-)

-- 
Eric Botcazou

Reply via email to