Commit Graph

59 Commits

Author SHA1 Message Date
Eike Ziller
7ba935c44b debugger: Fix QDir dumper for Qt4 64bit
Also make the structure more self-explained

Change-Id: Ia5080f4e07e2a8b7c6b18e1353a4cf1cf3488361
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 16:41:10 +01:00
Eike Ziller
48007785b0 debugger: Fix Qt4 QFile dumper
Change-Id: Ifd2caaef4d0c286f2855175acb2dc1b835213c37
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 16:40:50 +01:00
Christian Stenger
c726f3c47e Dumpers: Fix standard types (C++11) for old gcc
Change-Id: Ic208a45f6d0c7419d83dccd78b552c734421c953
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 16:37:10 +01:00
Eike Ziller
a3c4fe1ff2 dumpers: Fix QHash<int,...> dumper for Qt4
In Qt4 (u)int hashs are optimized and the key is inside an
anonymous union, so, at least with LLDB, we cannot reference
"key" directly as a child of the QHashNode

Change-Id: Id7cac3d08fa85af599f2b2564a6b1f11b465c7b2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 12:50:55 +01:00
Christian Stenger
1ca3da6117 Dumpers: Fix dumper for QVariant holding QList for old GDB
Change-Id: Id34806f06546ad9a6618f9b9431143465a988c1d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 12:50:32 +01:00
Eike Ziller
c6faedf1c7 debugger: generalize is32bit() through ptrSize()
That also makes lldb dumper actually test for bitness instead of
assuming 64bit

Change-Id: I6207bac04817e1f4700247dc00d2dfdace1e5100
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 11:27:47 +01:00
hjk
0190eb59f9 Debugger: Show shadowed variables with LLDB
Change-Id: If93547396384fe5b421c4b601b52476a23cdfa89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-25 16:12:03 +02:00
hjk
7f5366796c Debugger: Fix display of vector extensions with LLDB
Like char __attribute__ ((vector_size (8))) ...

Change-Id: Ie93547396384fe5b421c4b601b52476a23cdfa89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 18:49:27 +02:00
hjk
ab92c14bbe Debugger: Fix std::complex dumper for LLDB
Change-Id: I5ffb0f60039bb05f8467e925e71cf710a0712791
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 18:19:54 +02:00
hjk
6c673a042f Debugger: Fix std::deque dumper with LLDB
Change-Id: Idd3547396384fe5b421c4b601b52476a23cdfa89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 17:40:22 +02:00
Eike Ziller
9a57a41a7a Fix QDateTime dumper with various Qt versions and bitness
Change-Id: Iba15c1b27dc83e8949fef5fd25de61cc2b20be30
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 17:14:54 +02:00
hjk
0b8f3c3e9d Debugger: Continue LLDB event loop after exceptions
Change-Id: I4d3547396384fe5b421c4b601b52476a23cdfa89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 15:29:44 +02:00
hjk
6d4cc2231a Debugger: Handle _Rb_tree_const_iterator, too
Change-Id: I01baa597976ec5f6e84c8c52aff6e617082b1a28
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 15:25:40 +02:00
hjk
cd3c084df3 Debugger: Improve QSharedPointer dumper
Make it work with LLDB, show simple values always directly.

Change-Id: I463ef81183792f85243d679dee69a41db00bed07
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 15:16:05 +02:00
hjk
71080c8b8a Debugger: Fix std::map::iterator dumper for LLDB
"Better" spaces in type names again...

Change-Id: I21aafa021fd4893fb521251c9b4b9572c2beef44
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 12:46:27 +02:00
hjk
fc4a953bb5 Debugger: Simplify LLDB communication protocol
Produce proper JSON directly.

Change-Id: I61aaba021fd4893fb521251c9b4b9572c2beef44
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 12:26:17 +02:00
hjk
46c1769e24 Debugger: Show at least size for std::__1::unordered_map
Change-Id: I51aaba021fd4893fb521251c9b4b9572c2beef44
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 12:24:44 +02:00
hjk
1daac29647 Debugger: More QRegion dumper fixes
Change-Id: I01aaba021fd4893fb521251c9b4b9572c2beef44
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 11:37:50 +02:00
hjk
b889bb1608 Debugger: Make QRegion dumper more independent of debuginfo
Change-Id: I332e17cd4c6a167d273f31f4e7ff63c149a5d34b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 19:27:33 +02:00
hjk
c60cc101dd Debugger: More robust type lookup in QHashIterator dumper
LLDB needs exact matches of spaces

Change-Id: I442e17cd4c6a167d273f31f4e7ff63c149a5d34b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 19:27:25 +02:00
hjk
0614587ebf Debugger: Use more robust way to look up QMapNode types
LLDB needs exactly the same spacing as in the debug info.

Change-Id: I8a2e17cd4c6a167d273f31f4e7ff63c149a5d34b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 17:52:15 +02:00
hjk
e94e403052 Debugger: Fix QList<QStringList> dumper for LLDB
QStringList is movable in Qt 5

Change-Id: I5b0bee9c55e54f62c93a8515af0f56cdafed78bf
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 16:34:09 +02:00
hjk
04eaf6cdfc Debugger: Make function pointers visible with LLDB
Change-Id: I230bee9c55e54f62c93a8515af0f56cdafed78bf
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 15:21:18 +02:00
hjk
de40fff331 Debugger: Silence some debug output
Change-Id: I80cd68574586fdaf463d59b6f4dfb9149a120089
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:59:24 +02:00
hjk
07492890f7 Debugger: Add a parseAndEval implementation to the LLDB bridge
Makes e.g. QVariant5 dumper pass

Change-Id: I8fad68574586fdaf463d59b6f4dfb9149a120089
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:58:38 +02:00
hjk
a590f8de05 Debugger: Fix some of the array dumpers with LLDB
Change-Id: Ie2b12a526ff7199bcadfc21a3deb5354063a3e3b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:41:17 +02:00
hjk
ad7e12447c Debugger: Add 64 bit int extraction for LLDB
Fixes QDateTime dumper

Change-Id: I1c408e30ee0cdc22610e3037f94de5f7d246accf
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:31:47 +02:00
hjk
d13a8c1ada Debugger: Add dumper for QByteArrayData
Change-Id: Ia13be75a6466b710ddfe66665b124b1e2335a72c
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:31:23 +02:00
hjk
9f66b6384a Debugger: Fix QVariant{Map,Hash} dumper with Qt 5
Change-Id: I5be3b960a7a3091dc77555883d93e3d89b17381d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 19:14:33 +02:00
hjk
4c35310cec Debugger: Adjust QDateTime dumper after Qt 5.2 changes
Task-number: QTCREATORBUG-10232
Change-Id: I10551a258edb9456c4a9f93a3bfb374a8f07fc7d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 19:12:31 +02:00
hjk
a6c060cc65 Debugger: Try to extract Qt version from QtCore
This won't work without inferior calls (e.g. when loading core files),
so the old code is needed as fallback.

Change-Id: I1c9efc06374b00bc391bf55528546ccefc60349b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 19:12:22 +02:00
hjk
363c9c87b2 Debugger: Work around strange GDB behavior with overload resolution
Contrary to the documention, using the default (i.e. 'on') it seems to _require_
xplicit casting of function pointers:
 (gdb) p &Myns::QMetaType::typeName
    -> $1 = (const char *(*)(int)) 0xb7cf73b0 <Myns::QMetaType::typeName(int)>
 (gdb) p Myns::QMetaType::typeName(1024)
     -> 31^error,msg="Couldn't find method Myns::QMetaType::typeName"
But we can work around on the dumper side. So let's use the default from now on.

Change-Id: I3e2a87df797c6abab6183b4c121b843e5035cd47
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 19:10:47 +02:00
Eike Ziller
5686f5fd70 QUrl dumper: use correct string type name and extend test
Change-Id: I7fe88d11b3d52ba31d3e8564b673a35001e31488
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 13:20:03 +02:00
hjk
bdf8655376 Debugger: Make LLDB auto test start again
Change-Id: I11358adc8c01dd1261627f35d0f35500e8b34989
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-10-22 12:46:25 +02:00
Eike Ziller
515a958083 Fix Qt5 QUrl dumper
Change-Id: I5da72aebe30a3f7030b44566561fca25ce867c0a
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 10:47:21 +02:00
hjk
fc52b30450 Debugger: Simplify QVariant{Hash,Map} dumper
Change-Id: I4c5c79f9b2b2d739971d9f50a2b48cfde005e167
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-22 10:11:17 +02:00
Eike Ziller
d33f7fd2c7 LLDB: Implement qtVersion() for dumpers
Reads the version from Qt Core instead of just assuming Qt 5

Task-number: QTCREATORBUG-10427

Change-Id: Ifa7944c37449afe95c26b2c57e694be8eb8cbf4d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 17:13:45 +02:00
hjk
fafc00da4a Debugger: Fix QVariantMap/QVariantHash dumper with Qt 5
Change-Id: I71358adc8c01dd1261627f35d0f35500e8b34989
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 15:02:40 +02:00
hjk
6f6999bee3 Debugger: Fix boost/time dumpers with Python 3
Change-Id: Ia93034641889603c4de57babf0117132eeb0c0cb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 15:02:24 +02:00
hjk
8c02d6e0dd Debugger: Fix QChar dumper with Python 3
Change-Id: I7da412c9bdaf3a8f65484ac99f06fc31a5cdc1c3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 14:15:56 +02:00
Eike Ziller
51a257637e LLDB: Set environment for debugged process
Task-number: QTCREATORBUG-10030

Change-Id: Ib487cee704ea30f52c52f6f025823637fa4199eb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 12:25:49 +02:00
hjk
ffe50efa00 Debugger: Remove wrong check in boost::shared_pointer dumper
Task-Number: QTCREATORBUG-10441
Change-Id: I404fe9848444c2b03c086d027c0f3716f0bb3542
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 02:12:34 +02:00
hjk
daf8d9bcf5 Debugger: Fix QVariant dumpers of Gui types.
Ouch...

Change-Id: I5cf5b660b451c26f55663bd81ea7fab4404c2884
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-21 01:20:33 +02:00
hjk
49a2d45e59 Debugger: Fix encoding switch between Python 2 and Python 3
Change-Id: I29260139fa82f63c3e278913c5e3aa9f658d15d6
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2013-10-19 15:22:23 +02:00
hjk
7d8546b8e5 Debugger: Avoid python eval in normal operation
Change-Id: Iee0989bd3581f3b61eb975d58bc1c9e119e27d89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-17 17:12:55 +02:00
hjk
5ed7442f99 Debugger: Fix char * display with LLDB
Change-Id: I2d0989bd3581f3b61eb975d58bc1c9e119e27d89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 18:45:01 +02:00
hjk
d3e04583ff Debugger: Remove execfile use from lldbbridge
Change-Id: I1d0989bd3581f3b61eb975d58bc1c9e119e27d89
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 18:02:22 +02:00
hjk
8b2ce98e66 Debugger: Fix QModelIndex dumper
Change-Id: Icd0989bd3581f3b61eb975d58bc1c9e119e27d88
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 17:05:25 +02:00
hjk
3c3d4566f3 Debugger: Fix internal dumpers after modularisation
creatortypes.py wasn't included, and some d. qualification missing.

Change-Id: I1f444358cc1489f47083af39565147576f1885b7
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 16:53:56 +02:00
hjk
50e32a9252 Debugger: Fix attaching and argument passing with LLDB
Task-number: QTCREATORBUG-10121
Task-number: QTCREATORBUG-9946

Change-Id: I033ec0679a3335ad14d511c0846e10e90a4679d5
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-14 18:57:36 +02:00