blob: cda6635d8cfeb1e41e805888c13825aa9deb3950 [file] [log] [blame]
// PR c++/69349 - template substitution error for flexible array members
// { dg-do compile }
template <class>
struct A;
template <class T>
struct A<T[]> { typedef int X; };
template <class T> int foo (T&, typename A<T>::X = 0) { return 0; }
struct B {
int n, a[]; // { dg-error "10:ISO C\\+\\+ forbids flexible array member" }
};
void bar (B *b)
{
foo (b->a);
}