summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus/ResolveExpression.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@digia.com>2013-08-21 14:39:18 +0200
committerOswald Buddenhagen <oswald.buddenhagen@digia.com>2013-08-21 14:39:18 +0200
commitc2e90c360baaa5b8ea31d4466cadfab2bda3aabe (patch)
tree33ff2ee485894273b947b0c89a47dac75c8db3b1 /src/libs/cplusplus/ResolveExpression.cpp
parentbf69b4c4446fbcc5feb94edcc89ff87078b2afcf (diff)
parent01b3e1fa547d8def812d64941968fb5e13516383 (diff)
downloadqt-creator-c2e90c360baaa5b8ea31d4466cadfab2bda3aabe.tar.gz
Merge remote-tracking branch 'origin/2.8'
Conflicts: src/plugins/cpptools/cppcompletion_test.cpp src/plugins/cpptools/cpptoolsplugin.h src/plugins/projectexplorer/customtoolchain.cpp src/plugins/vcsbase/command.cpp Change-Id: Ie7b3c9e136c0748b41320227c757471259339b48
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 20a562562e..79f10f5f46 100644
--- a/src/libs/cplusplus/ResolveExpression.cpp
+++ b/src/libs/cplusplus/ResolveExpression.cpp
@@ -911,6 +911,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) {
@@ -994,7 +996,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;