diff options
Diffstat (limited to 'src/libs/cplusplus/ResolveExpression.cpp')
-rw-r--r-- | src/libs/cplusplus/ResolveExpression.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp index 9b09c2c5b5..08213d43a4 100644 --- a/src/libs/cplusplus/ResolveExpression.cpp +++ b/src/libs/cplusplus/ResolveExpression.cpp @@ -894,6 +894,8 @@ private: static QList<LookupItem> typedefsFromScopeUpToFunctionScope(const Name *name, Scope *scope) { QList<LookupItem> results; + if (!scope) + return results; Scope *enclosingBlockScope = 0; for (Block *block = scope->asBlock(); block; block = enclosingBlockScope ? enclosingBlockScope->asBlock() : 0) { @@ -977,7 +979,7 @@ ClassOrNamespace *ResolveExpression::baseExpression(const QList<LookupItem> &bas TypedefsResolver typedefsResolver(_context); foreach (const LookupItem &r, baseResults) { - if (!r.type().type()) + if (!r.type().type() || !r.scope()) continue; FullySpecifiedType ty = r.type().simplified(); FullySpecifiedType originalType = ty; |