aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/cplusplus
diff options
context:
space:
mode:
authorRoberto Raggi <[email protected]>2010-07-09 10:11:30 +0200
committerRoberto Raggi <[email protected]>2010-07-09 10:11:30 +0200
commit9d63e4a6992ee3b4c41a1fefcdae6de4360a3eeb (patch)
treea9ca820e5ba840e759d548d9cd6cf8578fbdfcc2 /src/libs/cplusplus
parentba6b52ce146a3aad1f058be66018807a7a8ef79b (diff)
Try to resolve the type in the scope of the declaration.
Diffstat (limited to 'src/libs/cplusplus')
-rw-r--r--src/libs/cplusplus/ResolveExpression.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp
index aadc1f5273a..21fc815f031 100644
--- a/src/libs/cplusplus/ResolveExpression.cpp
+++ b/src/libs/cplusplus/ResolveExpression.cpp
@@ -604,7 +604,12 @@ ClassOrNamespace *ResolveExpression::baseExpression(const QList<LookupItem> &bas
if (ClassOrNamespace *retBinding = findClass(ptrTy->elementType(), overload->scope()))
return retBinding;
- else if (debug) {
+ else if (scope != overload->scope()) {
+ if (ClassOrNamespace *retBinding = findClass(ptrTy->elementType(), scope))
+ return retBinding;
+ }
+
+ if (debug) {
Overview oo;
qDebug() << "no class for:" << oo(ptrTy->elementType());
}