1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 
3 
4 namespace test0 {
5   // p3
6   template<typename T> int foo(T), bar(T, T); // expected-error{{single entity}}
7 }
8 
9 // PR7252
10 namespace test1 {
11   namespace A { template<typename T> struct Base { typedef T t; }; } // expected-note {{member found}}
12   namespace B { template<typename T> struct Base { typedef T t; }; } // expected-note {{member found}}
13 
14   template<typename T> struct Derived : A::Base<char>, B::Base<int> {
15     // FIXME: the syntax error here is unfortunate
16     typename Derived::Base<float>::t x; // expected-error {{found in multiple base classes of different types}} \
17                                         // expected-error {{expected member name or ';'}}
18   };
19 }
20