Index: tools/clang/plugins/tests/overridden_methods.cpp |
diff --git a/tools/clang/plugins/tests/overridden_methods.cpp b/tools/clang/plugins/tests/overridden_methods.cpp |
index f81d3a27ca1503e9985b87496c495cb5c7b35025..c544c1e1935993eb47eb6b98d09a25938b38f32c 100644 |
--- a/tools/clang/plugins/tests/overridden_methods.cpp |
+++ b/tools/clang/plugins/tests/overridden_methods.cpp |
@@ -9,6 +9,30 @@ void DerivedClass::SomeMethod() {} |
void DerivedClass::SomeOtherMethod() {} |
void DerivedClass::WebKitModifiedSomething() {} |
+class ImplementationInterimClass : public BaseClass { |
+ public: |
+ // Should not warn about pure virtual methods. |
+ virtual void SomeMethod() = 0; |
+}; |
+ |
+class ImplementationDerivedClass : public ImplementationInterimClass, |
+ public webkit_glue::WebKitObserverImpl { |
+ public: |
+ // Should not warn about destructors. |
+ virtual ~ImplementationDerivedClass() {} |
+ // Should warn. |
+ virtual void SomeMethod(); |
+ // Should not warn if marked as override. |
+ virtual void SomeOtherMethod() override; |
+ // Should warn for inline implementations. |
Nico
2012/04/17 00:46:01
in cpp files?
|
+ virtual void SomeInlineMethod() {} |
+ // Should not warn if overriding a method whose origin is WebKit. |
+ virtual void WebKitModifiedSomething(); |
+ // Should warn if overridden method isn't pure. |
+ virtual void SomeNonPureBaseMethod() {} |
+}; |
+ |
int main() { |
DerivedClass something; |
+ ImplementationDerivedClass something_else; |
} |