Sorry I missed this the first time around...these should probably not be "struct", per the LLVM coding conventions, and the inheritance should be public.
Jordan On Dec 5, 2012, at 1:23 , Daniel Jasper <[email protected]> wrote: > Author: djasper > Date: Wed Dec 5 03:23:48 2012 > New Revision: 169365 > > URL: http://llvm.org/viewvc/llvm-project?rev=169365&view=rev > Log: > Add missing virtual destructors reported by -Wnon-virtual-dtor. > > Modified: > cfe/trunk/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp > > Modified: cfe/trunk/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp?rev=169365&r1=169364&r2=169365&view=diff > ============================================================================== > --- cfe/trunk/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp (original) > +++ cfe/trunk/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp Wed Dec 5 > 03:23:48 2012 > @@ -33,6 +33,7 @@ > /// 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 @@ > // 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>(), > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
