diff options
Diffstat (limited to 'src/plugins/projectexplorer/msvcparser.cpp')
-rw-r--r-- | src/plugins/projectexplorer/msvcparser.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/projectexplorer/msvcparser.cpp b/src/plugins/projectexplorer/msvcparser.cpp index a472827ed5..f088ce86af 100644 --- a/src/plugins/projectexplorer/msvcparser.cpp +++ b/src/plugins/projectexplorer/msvcparser.cpp @@ -34,7 +34,8 @@ #include <utils/qtcassert.h> #include <utils/fileutils.h> -static const char FILE_POS_PATTERN[] = "(cl|LINK|.+) : "; +// As of MSVC 2015: "foo.cpp(42) :" -> "foo.cpp(42):" +static const char FILE_POS_PATTERN[] = "(cl|LINK|.+[^ ]) ?: "; static const char ERROR_PATTERN[] = "[A-Z]+\\d\\d\\d\\d ?:"; static QPair<Utils::FileName, int> parseFileName(const QString &input) @@ -225,6 +226,16 @@ void ProjectExplorerPlugin::testMsvcOutputParsers_data() Constants::TASK_CATEGORY_COMPILE)) << QString(); + QTest::newRow("labeled error-2015") + << QString::fromLatin1("qmlstandalone\\main.cpp(54): error C4716: 'findUnresolvedModule' : must return a value") << OutputParserTester::STDOUT + << QString() << QString() + << (QList<Task>() + << Task(Task::Error, + QLatin1String("C4716: 'findUnresolvedModule' : must return a value"), + Utils::FileName::fromUserInput(QLatin1String("qmlstandalone\\main.cpp")), 54, + Constants::TASK_CATEGORY_COMPILE)) + << QString(); + QTest::newRow("labeled warning") << QString::fromLatin1("x:\\src\\plugins\\projectexplorer\\msvcparser.cpp(69) : warning C4100: 'something' : unreferenced formal parameter") << OutputParserTester::STDOUT << QString() << QString() |