blob: 1936f2e5f76106545d6b0e5134f7ff24ed7fcf35 [file] [log] [blame]
// PR c++/68727
// { dg-do compile }
// { dg-options "-Winvalid-offsetof" }
struct A { int i; };
struct B : virtual A { };
__SIZE_TYPE__ s = __builtin_offsetof (B, A::i); // { dg-warning "'offsetof' within non-standard-layout type" }
template <typename T>
__SIZE_TYPE__
foo ()
{
return __builtin_offsetof (T, A::i) // { dg-warning "'offsetof' within non-standard-layout type" }
+ __builtin_offsetof (B, A::i); // { dg-warning "'offsetof' within non-standard-layout type" }
}
__SIZE_TYPE__ t = foo<B> ();