Revert "C++: add support for resolving typedefs for template arguments"

This reverts commit c228b36ccf.

There are multiple issues with the reverted patch:
  * Infinite loop due to indirect recursion e.g. when opening projectmodels.cpp
  * Crash when executing CppTools tests on Windows (no infinite loop)

Change-Id: I38f02132ca57d3d32085db6146d0df7d620d7618
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
Nikolai Kosjar
2014-09-10 16:36:20 +02:00
committed by Erik Verbruggen
parent 5d0eb9bd9c
commit 1f53ecd898
2 changed files with 5 additions and 85 deletions

View File

@@ -2328,34 +2328,6 @@ void CppToolsPlugin::test_completion_data()
<< QLatin1String("foo")
<< QLatin1String("Foo"));
QTest::newRow("resolving_template_argument1") << _(
"template <typename T>\n"
"struct Base { T t; };\n"
"struct Foo { int foo; };\n"
"void fun() {\n"
" typedef Foo TypedefedFoo;\n"
" Base<TypedefedFoo> baseFoo;\n"
" @\n"
"}\n"
) << _("baseFoo.t.") << (QStringList()
<< QLatin1String("foo")
<< QLatin1String("Foo"));
QTest::newRow("resolving_template_argument2") << _(
"namespace NS {\n"
"template <typename T>\n"
"struct Base { T t; };\n"
"}\n"
"struct Foo { int foo; };\n"
"void fun() {\n"
" typedef Foo TypedefedFoo;\n"
" NS::Base<TypedefedFoo> baseFoo;\n"
" @\n"
"}\n"
) << _("baseFoo.t.") << (QStringList()
<< QLatin1String("foo")
<< QLatin1String("Foo"));
// this is not a valid code(is not compile) but it caused a crash
QTest::newRow("template_specialization_and_initialization_with_pointer2") << _(
"template <typename T1, typename T2 = int>\n"