summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus/ResolveExpression.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/cplusplus/ResolveExpression.cpp')
-rw-r--r--src/libs/cplusplus/ResolveExpression.cpp4
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;