// { dg-do assemble } // { dg-options "" } // Origin: philippeb@videotron.ca #include using namespace std; template struct traits { typedef long next; }; template struct c1 { template struct c2 { c2() { cout << __PRETTY_FUNCTION__ << endl; } }; }; template void foo() { cout << __PRETTY_FUNCTION__ << endl; typename c1::next>::template c2(); } int main() { foo(); }