URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [abi/] [offsetof.C] - Rev 693
Compare with Previous | Blame | View Log
// Test that we can refer to the address of a base member of a null pointer
// to get its offset. The standard says that offsetof shall not be used on
// non-POD classes, but there seems to be no such restriction on the common
// implementation thereof.
// Yes, this is bad, naughty, evil code. But it seems to be well-formed.
// So we'll just warn.
// { dg-do run }
struct A { int i; };
struct B: public A {
virtual void f ();
};
struct C: public B { };
int main ()
{
return ((__SIZE_TYPE__) &((C*)0)->i) != sizeof(void*); // { dg-warning "offsetof|invalid" "" }
}