1// PR c++/54744
2
3template <typename T>
4struct base {
5  typedef base base_type;
6};
7
8template <typename T>
9struct derived : base<T> {
10  typedef typename derived::base_type::base_type base_type;
11  derived() : base_type() {}
12};
13