summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus/LookupContext.cpp
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2015-04-20 00:06:58 +0300
committerOrgad Shaneh <orgads@gmail.com>2015-04-20 13:37:35 +0000
commit29ac9fc65f04db4f7206bcdaaa44521c41895aff (patch)
tree861e0fa4cb73250bc4e7c90f3893fd16db5df793 /src/libs/cplusplus/LookupContext.cpp
parente5d8dbd070506409e33c6547d9d80a852ab8b3f0 (diff)
downloadqt-creator-29ac9fc65f04db4f7206bcdaaa44521c41895aff.tar.gz
C++: Remove DeprecatedGenTemplateInstance
It's, well, deprecated... Change-Id: Ie9d7e80345a8d9404f702dd877b3e940a1a49d93 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Diffstat (limited to 'src/libs/cplusplus/LookupContext.cpp')
-rw-r--r--src/libs/cplusplus/LookupContext.cpp52
1 files changed, 11 insertions, 41 deletions
diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp
index 51e59c2ac3..317c511444 100644
--- a/src/libs/cplusplus/LookupContext.cpp
+++ b/src/libs/cplusplus/LookupContext.cpp
@@ -32,7 +32,6 @@
#include "ResolveExpression.h"
#include "Overview.h"
-#include "DeprecatedGenTemplateInstance.h"
#include "CppRewriter.h"
#include <cplusplus/CoreTypes.h>
@@ -399,7 +398,7 @@ QList<LookupItem> LookupContext::lookup(const Name *name, Scope *scope) const
for (; scope; scope = scope->enclosingScope()) {
if (name->identifier() != 0 && scope->isBlock()) {
- bindings()->lookupInScope(name, scope, &candidates, /*templateId = */ 0, /*binding=*/ 0);
+ bindings()->lookupInScope(name, scope, &candidates);
if (! candidates.isEmpty()) {
// it's a local.
@@ -435,7 +434,7 @@ QList<LookupItem> LookupContext::lookup(const Name *name, Scope *scope) const
}
} else if (Function *fun = scope->asFunction()) {
- bindings()->lookupInScope(name, fun, &candidates, /*templateId = */ 0, /*binding=*/ 0);
+ bindings()->lookupInScope(name, fun, &candidates);
if (! candidates.isEmpty()) {
// it's an argument or a template parameter.
@@ -462,13 +461,13 @@ QList<LookupItem> LookupContext::lookup(const Name *name, Scope *scope) const
// continue, and look at the enclosing scope.
} else if (ObjCMethod *method = scope->asObjCMethod()) {
- bindings()->lookupInScope(name, method, &candidates, /*templateId = */ 0, /*binding=*/ 0);
+ bindings()->lookupInScope(name, method, &candidates);
if (! candidates.isEmpty())
break; // it's a formal argument.
} else if (Template *templ = scope->asTemplate()) {
- bindings()->lookupInScope(name, templ, &candidates, /*templateId = */ 0, /*binding=*/ 0);
+ bindings()->lookupInScope(name, templ, &candidates);
if (! candidates.isEmpty()) {
// it's a template parameter.
@@ -555,7 +554,6 @@ ClassOrNamespace::ClassOrNamespace(CreateBindings *factory, ClassOrNamespace *pa
: _factory(factory)
, _parent(parent)
, _scopeLookupCache(0)
- , _templateId(0)
, _instantiationOrigin(0)
, _rootClass(0)
, _name(0)
@@ -568,11 +566,6 @@ ClassOrNamespace::~ClassOrNamespace()
delete _scopeLookupCache;
}
-const TemplateNameId *ClassOrNamespace::templateId() const
-{
- return _templateId;
-}
-
ClassOrNamespace *ClassOrNamespace::instantiationOrigin() const
{
return _instantiationOrigin;
@@ -672,7 +665,7 @@ QList<LookupItem> ClassOrNamespace::lookup_helper(const Name *name, bool searchI
if (processedOwnParents.contains(binding))
break;
processedOwnParents.insert(binding);
- lookup_helper(name, binding, &result, &processed, /*templateId = */ 0);
+ lookup_helper(name, binding, &result, &processed);
binding = binding->_parent;
} while (searchInEnclosingScope && binding);
}
@@ -681,9 +674,8 @@ QList<LookupItem> ClassOrNamespace::lookup_helper(const Name *name, bool searchI
}
void ClassOrNamespace::lookup_helper(const Name *name, ClassOrNamespace *binding,
- QList<LookupItem> *result,
- QSet<ClassOrNamespace *> *processed,
- const TemplateNameId *templateId)
+ QList<LookupItem> *result,
+ QSet<ClassOrNamespace *> *processed)
{
if (binding && ! processed->contains(binding)) {
processed->insert(binding);
@@ -708,15 +700,15 @@ void ClassOrNamespace::lookup_helper(const Name *name, ClassOrNamespace *binding
}
}
}
- _factory->lookupInScope(name, scope, result, templateId, binding);
+ _factory->lookupInScope(name, scope, result, binding);
}
}
foreach (Enum *e, binding->unscopedEnums())
- _factory->lookupInScope(name, e, result, templateId, binding);
+ _factory->lookupInScope(name, e, result, binding);
foreach (ClassOrNamespace *u, binding->usings())
- lookup_helper(name, u, result, processed, binding->_templateId);
+ lookup_helper(name, u, result, processed);
Anonymouses::const_iterator cit = binding->_anonymouses.constBegin();
Anonymouses::const_iterator citEnd = binding->_anonymouses.constEnd();
@@ -724,14 +716,13 @@ void ClassOrNamespace::lookup_helper(const Name *name, ClassOrNamespace *binding
const AnonymousNameId *anonymousNameId = cit.key();
ClassOrNamespace *a = cit.value();
if (!binding->_declaredOrTypedefedAnonymouses.contains(anonymousNameId))
- lookup_helper(name, a, result, processed, binding->_templateId);
+ lookup_helper(name, a, result, processed);
}
}
}
void CreateBindings::lookupInScope(const Name *name, Scope *scope,
QList<LookupItem> *result,
- const TemplateNameId *templateId,
ClassOrNamespace *binding)
{
if (! name) {
@@ -782,11 +773,6 @@ void CreateBindings::lookupInScope(const Name *name, Scope *scope,
}
}
- if (templateId && (s->isDeclaration() || s->isFunction())) {
- FullySpecifiedType ty = DeprecatedGenTemplateInstance::instantiate(templateId, s, control());
- item.setType(ty); // override the type.
- }
-
// instantiate function template
if (name->isTemplateNameId() && s->isTemplate() && s->asTemplate()->declaration()
&& s->asTemplate()->declaration()->isFunction()) {
@@ -933,21 +919,6 @@ ClassOrNamespace *ClassOrNamespace::lookupType_helper(const Name *name,
if (ClassOrNamespace *e = nestedType(name, origin))
return e;
- if (_templateId) {
- if (_usings.size() == 1) {
- ClassOrNamespace *delegate = _usings.first();
-
- if (ClassOrNamespace *r = delegate->lookupType_helper(name,
- processed,
- /*searchInEnclosingScope = */ true,
- origin))
- return r;
- } else if (Q_UNLIKELY(debug)) {
- qWarning() << "expected one using declaration. Number of using declarations is:"
- << _usings.size();
- }
- }
-
foreach (ClassOrNamespace *u, usings()) {
if (ClassOrNamespace *r = u->lookupType_helper(name,
processed,
@@ -1159,7 +1130,6 @@ ClassOrNamespace *ClassOrNamespace::nestedType(const Name *name, ClassOrNamespac
ClassOrNamespace *instantiation = _factory->allocClassOrNamespace(baseTemplateClassReference);
if (Q_UNLIKELY(debug))
instantiation->_name = templId;
- instantiation->_templateId = templId;
while (!origin->_symbols.isEmpty() && origin->_symbols[0]->isBlock())
origin = origin->parent();