// PR c++/8736
// Origin: Peter Kolloch <pkolloch@gmx.ne>
// { dg-do compile }
template <typename T> struct A
{
template <typename U> struct B
{
typedef int X;
};
};
template <typename T> void foo()
{
typedef typename A<T>::B<T>::X Y;
}
void bar()
{
foo<int>();
}