diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp
index afdac99ef631f1f7f8e6365ef14428d742115d4d..a2b3141a441e27b80888948b74dd4121a60f4139 100644
--- a/src/libs/cplusplus/LookupContext.cpp
+++ b/src/libs/cplusplus/LookupContext.cpp
@@ -57,9 +57,8 @@ static void addNames(const Name *name, QList<const Name *> *names, bool addAllNa
         return;
     else if (const QualifiedNameId *q = name->asQualifiedNameId()) {
         addNames(q->base(), names);
-        addNames(q->name(), names);
-    } else if (addAllNames || name->isNameId() || name->isTemplateNameId()
-               || name->asDestructorNameId()) {
+        addNames(q->name(), names, addAllNames);
+    } else if (addAllNames || name->isNameId() || name->isTemplateNameId()) {
         names->append(name);
     }
 }