summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tools/clangbackend/clangbackendmain.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/tools/clangbackend/clangbackendmain.cpp b/src/tools/clangbackend/clangbackendmain.cpp
index 5522591379..28b7f251b6 100644
--- a/src/tools/clangbackend/clangbackendmain.cpp
+++ b/src/tools/clangbackend/clangbackendmain.cpp
@@ -33,6 +33,8 @@
#include <clangcodemodelserver.h>
#include <clangcodemodelclientproxy.h>
+#include <iostream>
+
using ClangBackEnd::ClangCodeModelClientProxy;
using ClangBackEnd::ClangCodeModelServer;
using ClangBackEnd::ConnectionServer;
@@ -53,8 +55,20 @@ QString processArguments(QCoreApplication &application)
return parser.positionalArguments().first();
}
+#ifdef Q_OS_WIN
+static void messageOutput(QtMsgType type, const QMessageLogContext &, const QString &msg)
+{
+ std::wcout << msg.toStdWString() << std::endl;
+ if (type == QtFatalMsg)
+ abort();
+}
+#endif
+
int main(int argc, char *argv[])
{
+#ifdef Q_OS_WIN
+ qInstallMessageHandler(messageOutput);
+#endif
QLoggingCategory::setFilterRules(QStringLiteral("qtc.*.debug=false"));
QCoreApplication::setOrganizationName(QStringLiteral("QtProject"));