staticvoidstatic_func();// expected-note {{must qualify identifier to find this declaration in dependent base class}}
voidfunc();// expected-note {{must qualify identifier to find this declaration in dependent base class}}
};
template<classT>
classB:publicA<T>{
public:
staticvoidz2(){
static_func();// expected-warning {{use of identifier 'static_func' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}}
func();// expected-warning {{use of identifier 'func' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}} expected-error {{call to non-static member function without an object argument}}
staticintf1();// expected-note {{must qualify identifier to find this declaration in dependent base class}}
intf2();// expected-note {{must qualify identifier to find this declaration in dependent base class}}
};
template<classT>
classB:publicA<T>{
public:
voidg1(intp=f1());// expected-warning {{use of identifier 'f1' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}}
voidg2(intp=f2());// expected-warning {{use of identifier 'f2' found via unqualified lookup into dependent bases of class templates is a Microsoft extension}} expected-error {{call to non-static member function without an object argument}}