ipa-cp: Perform operations in the appropriate types (PR 118097)
[gcc.git] / gcc / testsuite / g++.dg / template / error34.C
blob921cb8fb7296e5b256641acfeed3966ec7151e6f
1 // PR c++/33842
2 // { dg-do compile }
4 template<typename T> struct A
6   A<__builtin_offsetof(T, x)>();        // { dg-error "type/value mismatch|offsetof\\(T, x\\)|template-id" }
7 };
9 template<typename T> struct B
11   B<__builtin_offsetof(T, x.y)>();      // { dg-error "type/value mismatch|offsetof\\(T, x.y\\)|template-id" }
14 template<typename T> struct C
16   C<__builtin_offsetof(T, x[6])>();     // { dg-error "type/value mismatch|offsetof\\(T, x\\\[6\\\]\\)|template-id" }
19 template<typename T> struct D
21   D<__builtin_offsetof(T, x.y[6].z)>(); // { dg-error "type/value mismatch|offsetof\\(T, x.y\\\[6\\\].z\\)|template-id" }
24 struct E { int x; };
26 template<typename T> struct F
28   F<__builtin_offsetof(E, x)>();        // { dg-error "type/value mismatch|offsetof\\(E, x\\)|template-id" }