blob: 910fa37e80d8f58e8f605ecb5c99f50fb23beac5 [file] [log] [blame]
Francois Pichet0f74d1e2011-09-07 00:14:57 +00001// RUN: %clang_cc1 -fms-extensions -fsyntax-only -verify %s
2
3
4template <class T>
5class A {
6public:
7 void f(T a) { }// expected-note {{must qualify identifier to find this declaration in dependent base class}}
8 void g();// expected-note {{must qualify identifier to find this declaration in dependent base class}}
9};
10
11
12template <class T>
13class B : public A<T> {
14public:
15 void z(T a)
16 {
17 f(a); // expected-warning {{use of identifier 'f' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}}
18 g(); // expected-warning {{use of identifier 'g' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}}
19 }
20};
21
22template class B<int>; // expected-note {{requested here}}
23template class B<char>;
24
25void test()
26{
27 B<int> b;
28 b.z(3);
29}
30
31