-// Bug: g++ generates an error trying to generate the first foo<int>, when
-// it should silently fail and go on to the next one.
-
-template<class T, typename U> class A { };
-
-template<class T> void
-foo(const A<T,typename T::N>&);
-
-template<typename T>
-class B { };
-
-template<typename T> void
-foo(B<T> const &) { }
-
-int
-main(void)
-{
- B<int> sa;
-
- foo<int> (sa);
-}