invalid offsetof from non-POD type
Zack Weinberg
zack@codesourcery.com
Tue Apr 22 02:58:00 GMT 2003
Gabriel Dos Reis <gdr@integrable-solutions.net> writes:
> John Quigley <johnw@lowestplane.org> writes:
>
> | While it is not standards compliant code, gcc still provides the correct
> | result.
>
> The key issue is what do you define to be the "correct" result when you
> apply offsetof() to a non-POD?
I have never really understood why the C++ standard imposes this
restriction. There would seem to be a well-defined answer to the
question posed by offsetof(non-POD, data-member), since the data
member does exist in memory at a well-defined offset from the
beginning of the object. If that weren't true the compiler wouldn't
be able to generate accesses to it.
zw
More information about the Gcc-bugs
mailing list