1template <class> struct A { static const int n = 1; } ; 2template <int> struct B; 3 4template <class S> 5struct restype_order { 6 static const int s = A<S>::n; 7 typedef typename B<(s > 0)>::t t; 8}; 9