diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2015-05-21 08:42:20 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2015-05-22 09:13:00 +0000 |
commit | 4eb9b5f145a75092e7a9c8469d6a235b4cdd8b04 (patch) | |
tree | 842bcaf2de116938a1fb25d8d230709ed6aa6995 | |
parent | b5f6a9e6e57c0b43878167e3f1036516f21018e4 (diff) | |
download | qt-creator-4eb9b5f145a75092e7a9c8469d6a235b4cdd8b04.tar.gz |
C++: Simplify template function resolving a bit
There's no reason to keep the Template after it is instantiated.
Change-Id: I91210ae11b3420bb038168fe951b52d28ccc132e
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-rw-r--r-- | src/libs/cplusplus/LookupContext.cpp | 2 | ||||
-rw-r--r-- | src/libs/cplusplus/ResolveExpression.cpp | 8 |
2 files changed, 1 insertions, 9 deletions
diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp index a8fce052db..88c75919db 100644 --- a/src/libs/cplusplus/LookupContext.cpp +++ b/src/libs/cplusplus/LookupContext.cpp @@ -2104,7 +2104,7 @@ Symbol *CreateBindings::instantiateTemplateFunction(const TemplateNameId *instan subst.bind(cloner.name(name, &subst), ty); } - return cloner.symbol(specialization, &subst); + return cloner.symbol(specialization->declaration(), &subst); } } // namespace CPlusPlus diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp index 7612e7f51d..43887b2995 100644 --- a/src/libs/cplusplus/ResolveExpression.cpp +++ b/src/libs/cplusplus/ResolveExpression.cpp @@ -679,14 +679,6 @@ bool ResolveExpression::visit(CallAST *ast) // Constructor call FullySpecifiedType ctorTy = control()->namedType(classTy->name()); addResult(ctorTy, scope); - } else if (Template *templateTy = ty->asTemplateType()) { - // template function - if (Symbol *declaration = templateTy->declaration()) { - if (Function *funTy = declaration->asFunction()) { - if (maybeValidPrototype(funTy, actualArgumentCount)) - addResult(funTy->returnType().simplified(), scope); - } - } } } |