[cxx-abi-dev] question on the virtual base offset
Dennis Handly
dhandly at cup.hp.com
Tue Nov 9 07:23:38 UTC 2004
>From: Mark Mitchell <mark at codesourcery.com>
>> 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.
I think Kerch is saying that neither g++ 3.4 nor aC++ look at those
unnamed bit fields and it's too late now. In fact he said that 3.5
looked at them and then somehow this change was backed out as a bad idea?
>1) Revise the first paragraph of 2.4 II to say:
>"then the non-static data members (including unnamed bitfields, although
>they are not members in ISO C++) in declaration order"
And this wouldn't match.
>3) Update 2.4.II.1.a to read:
>Update align(C) to max (align(C), align(T))."
Mark Mitchell
I believe this is what we don't want if T is an unnamed bit field.
Hmm, I think the original bit field was named???
More information about the cxx-abi-dev
mailing list