diff options
Diffstat (limited to 'compilerplugins/clang/refcounting.cxx')
-rw-r--r-- | compilerplugins/clang/refcounting.cxx | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/compilerplugins/clang/refcounting.cxx b/compilerplugins/clang/refcounting.cxx index bfdafe91f669..523f0486eafc 100644 --- a/compilerplugins/clang/refcounting.cxx +++ b/compilerplugins/clang/refcounting.cxx @@ -83,10 +83,7 @@ bool isDerivedFrom(const CXXRecordDecl *decl, const char *pString) { if (!decl->hasDefinition()) { return false; } - if (// not sure what hasAnyDependentBases() does, - // but it avoids classes we don't want, e.g. WeakAggComponentImplHelper1 - !decl->hasAnyDependentBases() && - !compat::forallBases( + if (!compat::forallBases( *decl, #if CLANG_VERSION < 30800 BaseCheckNotSubclass, @@ -223,14 +220,6 @@ bool containsXInterfaceSubclass(const Type* pType0) { { return false; } - for(unsigned i=0; i<pTemplate->getTemplateArgs().size(); ++i) { - const TemplateArgument& rArg = pTemplate->getTemplateArgs()[i]; - if (rArg.getKind() == TemplateArgument::ArgKind::Type && - containsXInterfaceSubclass(rArg.getAsType())) - { - return true; - } - } } } if (pType->isPointerType()) { |