blob: 1a5b995e34e333e6cd68a094d2f3fd2f3cacebe4 [file] [log] [blame]
// PR c++/71099
struct A {
virtual void foo();
};
virtual void A::foo() {} // { dg-error "'virtual' outside class" }
template<typename>
struct B {
virtual void foo();
};
template<typename T>
virtual void B<T>::foo() {} // { dg-error "'virtual' outside class" }
struct C {
template<typename>
virtual void foo(); // { dg-error "templates may not be 'virtual'" }
};
template<typename>
virtual void C::foo() {} // { dg-error "'virtual' outside class" }
template<typename>
struct D {
template<typename>
virtual void foo(); // { dg-error "templates may not be 'virtual'" }
};
template<typename T>
template<typename>
virtual void D<T>::foo() {} // { dg-error "'virtual' outside class" }