blob: b48b17327be84fc9bf72adbcbad2e89d04e69484 [file] [log] [blame]
// PR c++/48446
// { dg-options "" }
// { dg-require-effective-target alloca }
template<typename T>
struct A
{
~A ();
T *operator-> () const;
};
struct B
{
typedef A <B> P;
static P foo (int);
};
struct C
{
typedef A<C> P;
static const int c = 80;
};
C::P bar ();
void
baz ()
{
char z[bar ()->c];
{
B::P m = B::foo (sizeof (z));
}
}