[cxx-abi-dev] question on the virtual base offset
Mark Mitchell
mark at codesourcery.com
Fri Nov 19 07:52:45 UTC 2004
Mark Mitchell wrote:
> Kerch Holt wrote:
>
> The question raised here was how an unnamed bitfield should be handled
> in a non-POD. (In a POD, the C++ ABI is clear -- follow the rules of
> the C ABI.)
>
>> Since E only contains an "unnamed bitfield" which is not even considered
>> a member (see 9.6 P2) I think the nvalign(E) should be 1.
>
>
> Wow, I didn't realize an unnamed bitfield was not a member.
>
>> Does this need extra wording in the ABI to deal with the special case
>> of unnamed bitfields? Perhaps alter 2.4 II 1. to say:
>> If D is not an unnamed bitfield
>> update align(C) to max(align(C),align(T))
>
>
> I think the right thing to do is to handle unnamed bitfields as they
> would be handled in the underlying C ABI. In some C ABIs, that results
> in an update to the alignment; in other C ABIs it does not.
Since there was no further commentary, I checked in the change attached.
--
Mark Mitchell
CodeSourcery, LLC
mark at codesourcery.com
(916) 791-8304
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diffs.txt
URL: <http://sourcerytools.com/pipermail/cxx-abi-dev/attachments/20041118/67eaf87a/attachment.txt>
More information about the cxx-abi-dev
mailing list