diff options
Diffstat (limited to 'src/libs/cplusplus/ResolveExpression.cpp')
-rw-r--r-- | src/libs/cplusplus/ResolveExpression.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp index a6b5203f23..a247515627 100644 --- a/src/libs/cplusplus/ResolveExpression.cpp +++ b/src/libs/cplusplus/ResolveExpression.cpp @@ -491,8 +491,8 @@ bool ResolveExpression::visit(CallAST *ast) foreach (Symbol *overload, b->find(functionCallOp)) { if (Function *funTy = overload->type()->asFunctionType()) { if (maybeValidPrototype(funTy, actualArgumentCount)) { - Function *proto = instantiate(namedTy->name(), funTy)->asFunctionType(); - addResult(proto->returnType().simplified(), scope); + if (Function *proto = instantiate(namedTy->name(), funTy)->asFunctionType()) + addResult(proto->returnType().simplified(), scope); } } } @@ -535,9 +535,9 @@ bool ResolveExpression::visit(ArrayAccessAST *ast) if (ClassOrNamespace *b = _context.lookupType(namedTy->name(), scope)) { foreach (Symbol *overload, b->find(arrayAccessOp)) { if (Function *funTy = overload->type()->asFunctionType()) { - Function *proto = instantiate(namedTy->name(), funTy)->asFunctionType(); - // ### TODO: check the actual arguments - addResult(proto->returnType().simplified(), scope); + if (Function *proto = instantiate(namedTy->name(), funTy)->asFunctionType()) + // ### TODO: check the actual arguments + addResult(proto->returnType().simplified(), scope); } } |