PR c++/85553
[official-gcc.git] / gcc / testsuite / g++.dg / ext / vla10.C
blobb48b17327be84fc9bf72adbcbad2e89d04e69484
1 // PR c++/48446
2 // { dg-options "" }
3 // { dg-require-effective-target alloca }
5 template<typename T>
6 struct A
8   ~A ();
9   T *operator-> () const;
12 struct B
14   typedef A <B> P;
15   static P foo (int);
18 struct C
20   typedef A<C> P;
21   static const int c = 80;
24 C::P bar ();
26 void
27 baz ()
29   char z[bar ()->c];
30   {
31     B::P m = B::foo (sizeof (z));
32   }