summaryrefslogtreecommitdiff
path: root/clang/test/SemaTemplate/temp.cpp
blob: e037f0f0713aebd270499cdd600476803d168e2c (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// RUN: %clang_cc1 -fsyntax-only -verify %s


namespace test0 {
  // p3
  template<typename T> int foo(T), bar(T, T); // expected-error{{single entity}}
}

// PR7252
namespace test1 {
  namespace A { template<typename T> struct Base { typedef T t; }; } // expected-note {{member found}}
  namespace B { template<typename T> struct Base { typedef T t; }; } // expected-note {{member found}}

  template<typename T> struct Derived : A::Base<char>, B::Base<int> {
    // FIXME: the syntax error here is unfortunate
    typename Derived::Base<float>::t x; // expected-error {{found in multiple base classes of different types}} \
                                        // expected-error {{expected member name or ';'}}
  };
}