diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-01-08 10:24:01 +0100 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-01-25 14:12:34 +0000 |
commit | 2c7823c9753c0df16ec558bf66d9da3c41d78983 (patch) | |
tree | 11ddb504a6f25134fadfa7dcc759fcd9cde833e5 /src/tools/clangbackend/clangbackendmain.cpp | |
parent | 32c938c4a032c7ef20de419a3886d2a2226d75df (diff) | |
download | qt-creator-2c7823c9753c0df16ec558bf66d9da3c41d78983.tar.gz |
Clang: forward clangbackend QDebug messages to stdout
...to see them in both qtcreator application output
and DebugView.
clangbackend is a separate process which provides
QtCreator stdout and stderr channels so we need to
have QDebug messages there in order to receive them.
Change-Id: I2edc4de1ca203b061395b0b3070e4471348eaad7
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/tools/clangbackend/clangbackendmain.cpp')
-rw-r--r-- | src/tools/clangbackend/clangbackendmain.cpp | 14 |
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")); |