1 
2 
3 
4 template <class T>
5 class B {
6 public:
7 	template <class U>
8     B(U p) {
9 	}
10 	template <>
11     B(int p) { // expected-warning{{explicit specialization of 'B<T>' within class scope is a Microsoft extension}}
12 	}
13 
14 	template <class U>
15     void f(U p) {
16 	  T y = 9;
17 	}
18 
19 
20     template <>
21     void f(int p) { // expected-warning{{explicit specialization of 'f' within class scope is a Microsoft extension}}
22 	  T a = 3;
23 	}
24 
25 	void f(int p) {
26  	  T a = 3;
27     }
28 };
29 
30