C++: Minor cleanup

Save a few as* calls

Change-Id: Id2aa43a39ead7231d9e9046ad16d51c05af1ec77
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com>
This commit is contained in:
Orgad Shaneh
2015-05-21 08:11:41 +03:00
committed by Orgad Shaneh
parent fa6d623dfa
commit b880ace167

View File

@@ -964,13 +964,16 @@ void CreateBindings::lookupInScope(const Name *name, Scope *scope,
}
// instantiate function template
if (name->isTemplateNameId() && s->isTemplate() && s->asTemplate()->declaration()
&& s->asTemplate()->declaration()->isFunction()) {
const TemplateNameId *instantiation = name->asTemplateNameId();
Template *specialization = s->asTemplate();
Symbol *instantiatedFunctionTemplate = instantiateTemplateFunction(instantiation,
specialization);
item.setType(instantiatedFunctionTemplate->type()); // override the type.
if (const TemplateNameId *instantiation = name->asTemplateNameId()) {
if (Template *specialization = s->asTemplate()) {
if (const Symbol *decl = specialization->declaration()) {
if (decl->isFunction()) {
Symbol *instantiatedFunctionTemplate =
instantiateTemplateFunction(instantiation, specialization);
item.setType(instantiatedFunctionTemplate->type()); // override the type
}
}
}
}
result->append(item);