aboutsummaryrefslogtreecommitdiff
path: root/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2012-12-05 09:23:48 +0000
committerDaniel Jasper <djasper@google.com>2012-12-05 09:23:48 +0000
commitaacadfea7a7174116dbde09937098763a3211396 (patch)
tree01863cecca13cbf0dc1430275166d6eb32766019 /lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
parent112fb27ab48ae3256173806a073ba7b88aa6531a (diff)
Add missing virtual destructors reported by -Wnon-virtual-dtor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169365 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp')
-rw-r--r--lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp b/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
index f7535090bd..a02301f4a9 100644
--- a/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
+++ b/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
@@ -33,6 +33,7 @@ namespace {
/// Checks for the init, dealloc, and any other functions that might be allowed
/// to perform direct instance variable assignment based on their name.
struct MethodFilter {
+ virtual ~MethodFilter() {}
virtual bool operator()(ObjCMethodDecl *M) {
if (M->getMethodFamily() == OMF_init ||
M->getMethodFamily() == OMF_dealloc ||
@@ -203,6 +204,7 @@ void ento::registerDirectIvarAssignment(CheckerManager &mgr) {
// with __attribute__((annotate("objc_no_direct_instance_variable_assignmemt"))).
namespace {
struct InvalidatorMethodFilter : MethodFilter {
+ virtual ~InvalidatorMethodFilter() {}
virtual bool operator()(ObjCMethodDecl *M) {
for (specific_attr_iterator<AnnotateAttr>
AI = M->specific_attr_begin<AnnotateAttr>(),