Debugger: Infrastructure for reworked native mixed debugging

- Remove old experimental native mixed approach.
- Move some common stack parsing to Stackhandler.
- Mark gdbbridge.py debug output explicitly to remove it
  from actual reponse handling

New native mixed needs QtDeclarative changes and
QTC_DEBUGGER_NATIVE_MIXED=1 for now.

Change-Id: I09eed1da51cea878636d36756015b7bfaed34203
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This commit is contained in:
hjk
2015-10-08 16:19:57 +02:00
committed by Christian Stenger
parent ea39476ef2
commit 525c33f999
30 changed files with 568 additions and 558 deletions

View File

@@ -44,6 +44,7 @@ namespace Debugger {
namespace Internal {
class DebuggerRunParameters;
class GdbMi;
class StackFrame
{
@@ -53,24 +54,25 @@ public:
bool isUsable() const;
QString toToolTip() const;
QString toString() const;
void fixQmlFrame(const DebuggerRunParameters &rp);
static StackFrame parseFrame(const GdbMi &data, const DebuggerRunParameters &rp);
static QList<StackFrame> parseFrames(const GdbMi &data, const DebuggerRunParameters &rp);
void fixQrcFrame(const DebuggerRunParameters &rp);
public:
DebuggerLanguage language;
qint32 level;
QByteArray level;
QString function;
QString file; // We try to put an absolute file name in there.
QString from; // Sometimes something like "/usr/lib/libstdc++.so.6"
QString to; // Used in ScriptEngine only.
QString file; // We try to put an absolute file name in there.
QString module; // Sometimes something like "/usr/lib/libstdc++.so.6"
QString receiver; // Used in ScriptEngine only.
qint32 line;
quint64 address;
bool usable;
QByteArray context; // Opaque value produced and consumed by the native backends.
Q_DECLARE_TR_FUNCTIONS(Debugger::Internal::StackHandler)
};
QDebug operator<<(QDebug d, const StackFrame &frame);
typedef QList<StackFrame> StackFrames;
} // namespace Internal