compilerplugins/clang/unnecessaryoverride.cxx | 18 ++++++++---------- sw/inc/unotbl.hxx | 1 - sw/qa/extras/inc/swmodeltestbase.hxx | 3 --- 3 files changed, 8 insertions(+), 14 deletions(-)
New commits: commit 6661bdb076f05427d28a3b069da7ea9ae957cd94 Author: Stephan Bergmann <[email protected]> Date: Mon Mar 13 17:24:09 2017 +0100 Minor loplugin:unnecessaryoverride improvement Change-Id: I3afb31b642a47e767dda0614d223b6b7f22e5d54 diff --git a/compilerplugins/clang/unnecessaryoverride.cxx b/compilerplugins/clang/unnecessaryoverride.cxx index 166ae65..5102faa 100644 --- a/compilerplugins/clang/unnecessaryoverride.cxx +++ b/compilerplugins/clang/unnecessaryoverride.cxx @@ -114,10 +114,6 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl) // operator to change from being an obsolete feature to being a standard // feature. That difference is not taken into account here. auto cls = methodDecl->getParent(); - if (methodDecl->isVirtual() && cls->getNumBases() == 0) - { - return true; - } if (methodDecl->getAccess() != AS_public) { return true; @@ -131,6 +127,7 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl) // if it's virtual, but it has a base-class with a non-virtual destructor if (methodDecl->isVirtual()) { + bool baseWithVirtualDtor = false; for (auto baseSpecifier = cls->bases_begin(); baseSpecifier != cls->bases_end(); ++baseSpecifier) { const RecordType* baseRecordType = baseSpecifier->getType()->getAs<RecordType>(); @@ -138,15 +135,16 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl) { const CXXRecordDecl* baseRecordDecl = dyn_cast<CXXRecordDecl>(baseRecordType->getDecl()); if (baseRecordDecl && baseRecordDecl->getDestructor() - && !baseRecordDecl->getDestructor()->isVirtual()) + && baseRecordDecl->getDestructor()->isVirtual()) { - return true; + baseWithVirtualDtor = true; + break; } } - else - { - return true; // dependent base - } + } + if (!baseWithVirtualDtor) + { + return true; } } // corner case diff --git a/sw/inc/unotbl.hxx b/sw/inc/unotbl.hxx index aa18474..7b06cc1 100644 --- a/sw/inc/unotbl.hxx +++ b/sw/inc/unotbl.hxx @@ -245,7 +245,6 @@ public: SwUnoCursor& GetCursor(); sw::UnoCursorPointer m_pUnoCursor; SwFrameFormat* GetFrameFormat() const { return const_cast<SwFrameFormat*>(static_cast<const SwFrameFormat*>(GetRegisteredIn())); } - virtual ~SwXTextTableCursor() override { }; }; struct SwRangeDescriptor diff --git a/sw/qa/extras/inc/swmodeltestbase.hxx b/sw/qa/extras/inc/swmodeltestbase.hxx index 8bb35fc..c4cbeeb 100644 --- a/sw/qa/extras/inc/swmodeltestbase.hxx +++ b/sw/qa/extras/inc/swmodeltestbase.hxx @@ -192,9 +192,6 @@ public: maTempFile.EnableKillingFile(); } - virtual ~SwModelTestBase() override - {} - virtual void setUp() override { test::BootstrapFixture::setUp(); _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
