// RUN: %clang_cc1 -fsyntax-only -std=c++11 %s -verify -Wsuggest-destructor-override
struct A {
~A();
virtual void run();
};
struct B : public A {
~B();
};
struct C {
virtual void run();
virtual ~C(); // expected-note 2{{overridden virtual function is here}}
};
struct D : public C {
void run();
~D();
// expected-warning@-1 {{'~D' overrides a destructor but is not marked 'override'}}
};
struct E : public C {
void run();
virtual ~E();
// expected-warning@-1 {{'~E' overrides a destructor but is not marked 'override'}}
};