// Build don't link: // Origin: philippeb@videotron.ca // Special g++ Options: #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(); }