1 // PR c++/33342
2 
3 template <bool B, class T = void>
4 struct enable_if_c {
5   typedef T type;
6 };
7 
8 template <class T>
9 struct A
10 {
11   template <class U, class V>
12   struct B;
13 
14   template <class U>
15   struct B<U, typename enable_if_c<U::sub::value==0>::type>
16   { };
17 };
18 
19 struct C
20 {
21   struct sub
22   {
23     static const int value = 0;
24   };
25 };
26 
27 
28 A<int> a;
29 A<int>::B<C, void> b;
30