FSF GCC merge 02/23/03
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.ext / typename1.C
blob2e489ab10fbf2055e3d476af90e5ab78d4396dc2
1 // Bug: g++ forgets about the instantiation of class1 when looking up
2 // class11_value, and tries to look things up in class1<class2>.
4 template<class ItIsInt>
5 struct class1 {
6   struct class11 {
7     typedef ItIsInt class11_value;
8   };
9 };
11 template<class ItIsClass2>
12 struct class3 {
13   int f();
16 template<class ItIsClass2>
17 int class3<ItIsClass2>::f()
19   return typename class1<typename ItIsClass2::class2_value>::class11::class11_value(10);
22 struct class2 {
23   typedef int class2_value;
26 int main()
28   class3<class2> the_class3;
29   the_class3.f();