C++: Fix class scope completion for templates.

* You now get completion for std::vector<int>::[complete].
* Also added a test.

Conflicts:
	src/plugins/cpptools/cppcompletion_test.cpp
	src/plugins/cpptools/cpptoolsplugin.h

Change-Id: I596ebf6bd18ec9a347113f8d162cc124c8a0d6b4
Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
Christian Kamm
2012-07-19 14:35:43 +02:00
committed by hjk
parent 991fdc124b
commit 9121c21230
2 changed files with 205 additions and 0 deletions

View File

@@ -1432,6 +1432,13 @@ bool CppCompletionAssistProcessor::completeScope(const QList<CPlusPlus::LookupIt
break;
}
} else if (Template *templ = ty->asTemplateType()) {
if (!result.binding())
continue;
if (ClassOrNamespace *b = result.binding()->lookupType(templ->name())) {
completeClass(b);
break;
}
}
}