diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-06-20 13:15:24 +0200 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-06-20 12:56:19 +0000 |
commit | 50fb1b497227509fb0eb8ce6290a6f29f28d52ed (patch) | |
tree | 3902ce6e0cf162ec720439a4b01418255db7bbce | |
parent | 3c0f61ef0b24833fd996b1de785884c70bfedd7f (diff) | |
download | qt-creator-50fb1b497227509fb0eb8ce6290a6f29f28d52ed.tar.gz |
Fix Qt Creator build with Clang
Change-Id: Id607170961db5b1919b316293a96ae3330216377
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
-rw-r--r-- | src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp | 3 | ||||
-rw-r--r-- | src/libs/qtcreatorcdbext/symbolgroupvalue.cpp | 20 | ||||
-rw-r--r-- | src/plugins/debugger/shared/hostutils.cpp | 4 | ||||
-rw-r--r-- | src/plugins/debugger/shared/hostutils.h | 4 |
4 files changed, 19 insertions, 12 deletions
diff --git a/src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp b/src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp index 2ceac6dd71..61c41de761 100644 --- a/src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp +++ b/src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp @@ -700,7 +700,8 @@ static std::string dumplocalHelper(ExtensionCommandContext &exc,PCSTR args, int return std::string(); } std::wstring value; - if (!dumpSimpleType(n->asSymbolGroupNode(), SymbolGroupValueContext(exc.dataSpaces(), exc.symbols()), &value, &std::string())) { + std::string tmp; + if (!dumpSimpleType(n->asSymbolGroupNode(), SymbolGroupValueContext(exc.dataSpaces(), exc.symbols()), &value, &tmp)) { *errorMessage = "Cannot dump " + iname; return std::string(); } diff --git a/src/libs/qtcreatorcdbext/symbolgroupvalue.cpp b/src/libs/qtcreatorcdbext/symbolgroupvalue.cpp index cd55cc712c..14c3732678 100644 --- a/src/libs/qtcreatorcdbext/symbolgroupvalue.cpp +++ b/src/libs/qtcreatorcdbext/symbolgroupvalue.cpp @@ -228,8 +228,9 @@ SymbolAncestorInfo SymbolGroupValue::infoOfAncestor(const std::string &name) con SymbolGroupValue SymbolGroupValue::addSymbol(const ULONG64 address, const std::string &type) const { const std::string &pointerToType = pointedToSymbolName(address, type); + std::string tmp; if (SymbolGroupNode *ancestorNode = - node()->symbolGroup()->addSymbol(module(), pointerToType, "", "", &std::string())) { + node()->symbolGroup()->addSymbol(module(), pointerToType, "", "", &tmp)) { return SymbolGroupValue(ancestorNode, m_context); } if (isValid() && SymbolGroupValue::verbose) { // Do not report subsequent errors @@ -2064,8 +2065,9 @@ static inline bool dumpQRegion(const SymbolGroupValue &v, std::wostream &str, vo namestr << "(" << info.prependQtGuiModule("QRegionPrivate *") << ")(" << std::showbase << std::hex << d.pointerValue() << ')'; + std::string tmp; SymbolGroupNode *qRegionPrivateNode - = v.node()->symbolGroup()->addSymbol(v.module(), namestr.str(), std::string(), &std::string()); + = v.node()->symbolGroup()->addSymbol(v.module(), namestr.str(), std::string(), &tmp); if (!qRegionPrivateNode) return false; @@ -2128,14 +2130,15 @@ static inline bool dumpQHostAddress(const SymbolGroupValue &v, std::wostream &st std::ostringstream namestr; namestr << '(' << info.prependQtNetworkModule("QHostAddressPrivate *") << ")(" << std::showbase << std::hex << d.pointerValue() << ')'; + std::string tmp; SymbolGroupNode *qHostAddressPrivateNode - = v.node()->symbolGroup()->addSymbol(v.module(), namestr.str(), std::string(), &std::string()); + = v.node()->symbolGroup()->addSymbol(v.module(), namestr.str(), std::string(), &tmp); if (!qHostAddressPrivateNode) return false; const SymbolGroupValue qHostAddressPrivateValue = SymbolGroupValue(qHostAddressPrivateNode, v.context()); const bool parsed = readPODFromMemory<bool>(qHostAddressPrivateValue.context().dataspaces, qHostAddressPrivateValue["isParsed"].address(), - sizeof(bool), false, &std::string()); + sizeof(bool), false, &tmp); if (parsed) { const int protocol = qHostAddressPrivateValue["protocol"].intValue(-1); if (protocol < 0) { @@ -2888,7 +2891,8 @@ static bool dumpQVariant(const SymbolGroupValue &v, std::wostream &str, std::str if (const SymbolGroupValue mv = dataV.typeCast(vmType.c_str())) { SymbolGroupNode *mapNode = mv.node(); std::wstring value; - if (dumpSimpleType(mapNode, dataV.context(), &value, &std::string()) + std::string tmp; + if (dumpSimpleType(mapNode, dataV.context(), &value, &tmp) == SymbolGroupNode::SimpleDumperOk) { str << value; if (specialInfoIn) @@ -2903,7 +2907,8 @@ static bool dumpQVariant(const SymbolGroupValue &v, std::wostream &str, std::str if (const SymbolGroupValue vl = dataV.typeCast(vLType.c_str())) { SymbolGroupNode *vListNode = vl.node(); std::wstring value; - if (dumpSimpleType(vListNode, dataV.context(), &value, &std::string()) + std::string tmp; + if (dumpSimpleType(vListNode, dataV.context(), &value, &tmp) == SymbolGroupNode::SimpleDumperOk) { str << value; if (specialInfoIn) @@ -2929,7 +2934,8 @@ static bool dumpQVariant(const SymbolGroupValue &v, std::wostream &str, std::str if (const SymbolGroupValue sl = dataV.typeCast(qtInfo.prependQtCoreModule("QStringList *").c_str())) { SymbolGroupNode *listNode = sl.node(); std::wstring value; - if (dumpSimpleType(listNode, dataV.context(), &value, &std::string()) + std::string tmp; + if (dumpSimpleType(listNode, dataV.context(), &value, &tmp) == SymbolGroupNode::SimpleDumperOk) { str << value; if (specialInfoIn) diff --git a/src/plugins/debugger/shared/hostutils.cpp b/src/plugins/debugger/shared/hostutils.cpp index 4f2fad99c6..5a65d5a6ea 100644 --- a/src/plugins/debugger/shared/hostutils.cpp +++ b/src/plugins/debugger/shared/hostutils.cpp @@ -193,7 +193,7 @@ bool isDebuggerWinException(unsigned long code) return code == EXCEPTION_BREAKPOINT || code == EXCEPTION_SINGLE_STEP; } -bool isFatalWinException(long code) +bool isFatalWinException(unsigned long code) { switch (code) { case EXCEPTION_BREAKPOINT: @@ -217,7 +217,7 @@ bool winResumeThread(unsigned long, QString *) { return false; } bool isWinProcessBeingDebugged(unsigned long) { return false; } void formatWindowsException(unsigned long , quint64, unsigned long, quint64, quint64, QTextStream &) { } -bool isFatalWinException(long) { return false; } +bool isFatalWinException(unsigned long) { return false; } bool isDebuggerWinException(unsigned long) { return false; } #endif // !Q_OS_WIN diff --git a/src/plugins/debugger/shared/hostutils.h b/src/plugins/debugger/shared/hostutils.h index 3348530867..1f35233dc0 100644 --- a/src/plugins/debugger/shared/hostutils.h +++ b/src/plugins/debugger/shared/hostutils.h @@ -40,7 +40,7 @@ bool winResumeThread(unsigned long dwThreadId, QString *errorMessage); bool isWinProcessBeingDebugged(unsigned long pid); // Special exception codes. -enum +enum : unsigned long { winExceptionCppException = 0xe06d7363, winExceptionSetThreadName = 0x406d1388, @@ -60,7 +60,7 @@ void formatWindowsException(unsigned long code, quint64 address, unsigned long flags, quint64 info1, quint64 info2, QTextStream &str); // Check for access violation, etc. -bool isFatalWinException(long code); +bool isFatalWinException(unsigned long code); // Check for EXCEPTION_BREAKPOINT, EXCEPTION_SINGLE_STEP bool isDebuggerWinException(unsigned long code); |