diff options
author | Eike Ziller <eike.ziller@digia.com> | 2013-05-24 16:20:10 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@digia.com> | 2013-05-24 16:20:10 +0200 |
commit | d8bd56bcd69dbe484745d2d7b9c5057a50f79d3e (patch) | |
tree | 38449b739cc5562da083cbd7d1d8dff1d3042e39 /src/plugins/cpptools/cppcompletion_test.cpp | |
parent | 8b61a5da2ed70a668b7e85466164bdc233028d11 (diff) | |
parent | 80e1ae805982c8dd9b34903accb9ed3449337a63 (diff) | |
download | qt-creator-d8bd56bcd69dbe484745d2d7b9c5057a50f79d3e.tar.gz |
Merge remote-tracking branch 'origin/2.7' into 2.8
Conflicts:
src/plugins/cpptools/cppcompletion_test.cpp
src/plugins/cpptools/cpptoolsplugin.h
src/plugins/qbsprojectmanager/qbsbuildstep.cpp
src/plugins/qbsprojectmanager/qbscleanstep.cpp
src/plugins/qbsprojectmanager/qbsnodes.cpp
src/shared/qbs
Change-Id: I8fc97ed61c47af2c3d9e5cc2bf81e97661204d4e
Diffstat (limited to 'src/plugins/cpptools/cppcompletion_test.cpp')
-rw-r--r-- | src/plugins/cpptools/cppcompletion_test.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/plugins/cpptools/cppcompletion_test.cpp b/src/plugins/cpptools/cppcompletion_test.cpp index 63f6807ea6..d3575c364e 100644 --- a/src/plugins/cpptools/cppcompletion_test.cpp +++ b/src/plugins/cpptools/cppcompletion_test.cpp @@ -2239,3 +2239,37 @@ void CppToolsPlugin::test_completion_instantiate_template_function() QVERIFY(completions.contains(QLatin1String("A"))); QVERIFY(completions.contains(QLatin1String("a"))); } + +void CppToolsPlugin::test_completion_crash_cloning_template_class_QTCREATORBUG9329() +{ + TestData data; + data.srcText = + "struct A {};\n" + "template <typename T>\n" + "struct Templ {};\n" + "struct B : A, Templ<A>\n" + "{\n" + " int f()\n" + " {\n" + " @\n" + " // padding so we get the scope right\n" + " }\n" + "};\n" + ; + setup(&data); + + Utils::ChangeSet change; + QString txt = QLatin1String("this->"); + change.insert(data.pos, txt); + QTextCursor cursor(data.doc); + change.apply(&cursor); + data.pos += txt.length(); + + QStringList completions = getCompletions(data); + + QCOMPARE(completions.size(), 4); + QVERIFY(completions.contains(QLatin1String("A"))); + QVERIFY(completions.contains(QLatin1String("B"))); + QVERIFY(completions.contains(QLatin1String("Templ"))); + QVERIFY(completions.contains(QLatin1String("f"))); +} |