// PR c++/51884 // { dg-do compile { target c++11 } } // { dg-final { scan-assembler "_ZN1BIZN3fooIivE3barILb1EEEvvE1CEC1ERKS4_" } } template struct test { static const int value = 0; }; template struct enable_if { typedef void type; }; struct A { virtual void f() {} }; template struct B : A { B(); B(const B&); }; template B::B() { } template B::B(const B&) { } template void g(T) { } template struct foo; template struct foo::value>::type> { template void bar() { struct C { } c; B b; g(b); } }; int main() { foo f; f.bar(); }