// Build don't link: // Origin: Mark Mitchell template struct S { typedef typename T::Y::Z X; // ERROR - No Y in A X x; // ERROR - No Y in A }; struct A { struct Y { typedef A Z; }; }; template struct S;