// Contributed by Dodji Seketeli // Origin PR c++/38699 // { dg-do compile } template struct A { const T *p; }; struct B { A a; }; template class A; void f0 () { __builtin_offsetof(A, p); // OK __builtin_offsetof(A, p[1]); // { dg-error "non constant address" } __builtin_offsetof(B, a.p); // OK __builtin_offsetof(B, a.p[1]); // { dg-error "non constant address" } }