diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp
index 41fe83b7cc15f53a6735e94fef30dd578d5db5e0..fd2666678a918c4718cc0537a3933c1a53a0de1c 100644
--- a/src/libs/cplusplus/LookupContext.cpp
+++ b/src/libs/cplusplus/LookupContext.cpp
@@ -415,8 +415,8 @@ void LookupContext::expandClass(Scope *scope,
             }
 
             for (int j = 0; j < baseClassCandidates.size(); ++j) {
-                Class *baseClassSymbol = baseClassCandidates.at(j)->asClass();
-                expand(baseClassSymbol->members(), visibleScopes, expandedScopes);
+                if (Class *baseClassSymbol = baseClassCandidates.at(j)->asClass())
+                    expand(baseClassSymbol->members(), visibleScopes, expandedScopes);
             }
         }
     }