Commit Graph

933 Commits

Author SHA1 Message Date
Orgad Shaneh
76a8606c38 Dumper: Add a dumper for CPlusPlus::FullySpecifiedType
Only prints the name for NamedType and PointerType

Change-Id: I8d4c3548b0260d0dfc091b326b5023bcfd6d46bd
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-04-01 06:56:56 +00:00
Orgad Shaneh
e22d0e82df Dumper: Add a dumper for CPlusPlus::PointerType
Change-Id: Ibc868a54326647184a30a796a487e218db7e968f
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-04-01 06:56:31 +00:00
Christian Stenger
de8422acb6 Lldb: Don't trigger continuations when already shutting down
Task-number: QTCREATORBUG-14219
Change-Id: Ic4dc3bd3f429164f3e56a43dd2b20d409d69fa49
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-04-01 06:19:49 +00:00
Eike Ziller
a7f48ac133 Merge remote-tracking branch 'origin/3.4' 2015-03-31 09:09:32 +02:00
hjk
5dcd9fe694 Debugger: Change plot display of array data to use lines between dots
Change-Id: I6d2cf5ca7d3f4a404a3c112a140aeae067cb3b6d
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-30 11:29:02 +00:00
Orgad Shaneh
257f62b708 Dumper: Fix adding quotes to C++ literals
Using plain '"' makes the name empty (value=\"\"Foo\"\").

Encode it to hex instead.

Change-Id: I5fec9d487f119ba5ca9b5aaa95b50e45a73bafa0
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-30 10:41:30 +00:00
Orgad Shaneh
179d4aea67 Dumper: Add a dumper for CPlusPlus::QualifiedNameId
Change-Id: Iba05dafcbeda45b54fb09c4800ab0bd634e6fe0d
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-27 07:09:32 +00:00
hjk
cc469f6466 Debugger: Robustify extraction of integral values using LLDB
Change-Id: Ieabad21e5e00bef12eb51046235890840b5a77a1
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-26 15:02:51 +00:00
hjk
00199039e7 Debugger: Fix display of expandable items in GDB and LLDB
Move common code to dumper.py and debuggerengine.cpp and
fix it there.

Change-Id: I20d91d1aa7400fbdb27938c10cf40c8f6019df0a
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-26 15:00:23 +00:00
hjk
55712e3ca9 Debugger: Fix retrieval of single expanded items
It was falling into the full update branch as the passed
parameter was not a list anymore.

Change-Id: I314beb3a68f8791483a599c7d5782fd454983840
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-26 12:30:53 +00:00
Eike Ziller
65cd5381d9 Merge remote-tracking branch 'origin/3.4' 2015-03-26 12:51:06 +01:00
hjk
939e5e3b19 Debugger: Fix stack display on interrupt with LLDB
Recent regression, stack data was only pulled when hitting
a breakpoint, not on interrupt.

Change-Id: I3de29fceadd4c5492f4edaffca7577dae7ae3d11
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-26 07:59:57 +00:00
hjk
7ef5831090 Debugger: Fix enhanced display of QModelIndex
Normal members accidentally occurred twice, and since the Enhanced
display this is now opt-in, we can show the expensive parent(), too.

Change-Id: Idcf87882a68a307aa65ac0704621a7c789380890
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-25 12:36:44 +00:00
Orgad Shaneh
430914b478 Dumper: Improve C++ literal dumpers
* Show arguments for template name
* Show qualified names

Change-Id: I3d7fc5a1526e5ae7c68ea991d8e199cf32e08a4c
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-24 15:02:17 +00:00
hjk
0c2a1ab3be Debugger: Adjust QFile dumper to library changes
Change-Id: I44ac0de970a41fc7da0453ed853396a6943ffb0b
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-24 12:51:03 +00:00
Eike Ziller
9790d8aa00 Merge remote-tracking branch 'origin/3.4' 2015-03-24 07:40:21 +01:00
hjk
48ac7c186b Debugger: Re-organize passing of display formats
The current setup (dumper->gui: list of descriptions,
gui->dumper: index in list) is fragile and not easily
i18n'able. Go with an enum based approach now.

Change-Id: Ie78c596065a8b2ba87ad725274da29d4be3a6da4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-23 14:12:43 +00:00
hjk
b3f88df41d Debugger: Remove most remaining occurrences of WatchData
... in WatchHandler and DebuggerEngine interface.
Adjust using code.

Change-Id: I6371f3e96ba46a783e23a5767cdde24a10d3fce7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-20 08:36:57 +00:00
Eike Ziller
aee54f9df5 Merge remote-tracking branch 'origin/3.4' 2015-03-19 16:00:28 +01:00
hjk
e8f8aaa263 Debugger: Fix dumper format choosing with GDB
... and further unify GDB and LLDB code paths.

Change-Id: Id89f3804c53190c4888082891fd3c3c55eceac84
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-19 06:59:01 +00:00
hjk
50ea4ab03f Debugger: Allow inline UTF-8 display for QByteArray
Change-Id: I0db0f605ccfac21127556f4ebaab801cf5393ab9
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-18 14:04:24 +00:00
hjk
90c9093a49 Debugger: Make display encoding of std::string selectable
Task-number: QTCREATORBUG-14119
Change-Id: I17434490a1a0a8374ee0c178c45a032af283e7a5
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-18 14:03:50 +00:00
hjk
6960da702a Debugger: Fix display of array base address
Change-Id: I858d38a1f52cd7247f1b57d686c3c065e5a0fb61
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-18 12:21:21 +00:00
hjk
779f55ff37 Debugger: Report LLDB breakpoint address after resolving
Task-number: QTCREATORBUG-14086
Change-Id: I7dcdc62196671583505a2e011ed04fbdd3227de6
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-16 10:32:20 +00:00
Eike Ziller
6433af534d Merge remote-tracking branch 'origin/3.4'
Conflicts:
	qtcreator.pri

Change-Id: Iacd9f2afb843f06d457914a3b842dfc606e3adf3
2015-03-12 16:49:57 +01:00
Christian Stenger
77be0cb57e Dumper: Fix accessing None type - again
Change-Id: I265e316a1168310f220aa449528790c4bfec41d8
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-12 13:03:44 +00:00
Christian Stenger
cce834aebc Dumper: Avoid accessing None type
Change-Id: I627f9ec1d2f67c2a870f9cebca89f5f7b8d67020
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-11 12:23:47 +00:00
Eike Ziller
23ec56516e Merge remote-tracking branch 'origin/3.4'
Conflicts:
	src/plugins/coreplugin/coreplugin.cpp

Change-Id: I9aa6c61412e2ef4a91efe028296bcc2d075856d7
2015-03-11 10:35:49 +01:00
Christian Stenger
14a02d5081 Debugger: Tests: Fix execution of dumper tests on OSX
Change-Id: Ibe3e447d29e3834766ef067ba4424c3b08ba5eb1
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-10 08:55:14 +00:00
hjk
3e02f8ec2e Debugger: Fix format switching for char[]
Task-number: QTCREATORBUG-14094
Change-Id: Iea1f59d5af2fb453ead7e0cef9e04293a698794e
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-09 11:17:25 +00:00
Eike Ziller
e2c073f41e Merge remote-tracking branch 'origin/3.4' 2015-03-09 10:26:39 +01:00
Orgad Shaneh
0c5dac717e Dumper: Fix literal dumping for template name
Change-Id: I41aab8da071745f8675ef9a7bcf2f6ca0f2fbd3e
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-06 13:30:06 +00:00
hjk
b981f5049d Debugger: Let LldbEngine pass current token to dumper
Change-Id: Ifea751354f637f67e640d36ba1baa95678c86ee9
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-06 08:43:37 +00:00
hjk
2fb9c3c7ab Debugger: Add dumper for (internal) ProString
Triggers currently on any class called ProString, but should (a) be
harmless, as the children are still available, and (b) can be disabled
by changing the Local Display Format for ProString to 'Raw data'

Change-Id: I59bfef50fb1b6c4aac44bf18bb1966851c19b7d0
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-05 17:37:28 +00:00
hjk
3ddbba1415 Debugger: Postpone location reporting in LLDB stops
... to the initial stack contents report. This helps to avoid unwanted
assembler reports in cases where we have to skip over "spurious"
stopped events.

Change-Id: I3340297ab01f976ab9d918fe73f69f4f32b12c03
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-04 13:01:06 +00:00
hjk
fb785895f2 Debugger: Make LldbEngine stack handling more similar to GdbEngine
This also addresses the remaining issues of QTCREATORBUG-13803.

Task-number: QTCREATORBUG-13803
Change-Id: Iceb123279236d98961d15fe7421acc7c10d1b1c7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-03-03 10:21:25 +00:00
hjk
9abfd712aa Debugger: Fix dumper reloading
Was broken after making the handler functions members.

Change-Id: If14cbad777323d48000641fb38a01eb59503d297
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-03-03 08:13:36 +00:00
Orgad Shaneh
4ad3a9564b Dumper: Fix dumping of nameless symbols
... like blocks

Change-Id: Ide53fd3758b09d996e4b7d7ebe91d50a8252cd27
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-03 07:20:17 +00:00
Orgad Shaneh
44797cdb52 Debugger: Fix stack filename resolving on Windows
Task-number: QTCREATORBUG-13999
Change-Id: Ifc04a5592b8a07c95f152e73e802b7b686119d88
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-02 07:06:12 +00:00
hjk
0ef651240d Debugger: Ignore first stop for LLDB/Terminal
Change-Id: I16c24fb4072ce4d63fdbfc57618daa2a48fa1d80
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-27 16:53:24 +00:00
hjk
2ffe50c208 Debugger: Fix stack view update after switching threads with LLDB
Change-Id: I8e870a44e07dd069db5f61ae6ffd75c517e2d445
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-27 14:52:14 +00:00
hjk
672ab5c8d8 Debugger: Rely less on implicit state in lldbbridge.
Ideally, all 'current' data should be passed down from the engine.

Change-Id: Ibfe7c466ec564c6907398ec2ec6c05d04e6670d6
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-27 14:42:55 +00:00
hjk
eb44cfc00a Debugger: Fix loading of Linux core files with LLDB
Change-Id: I76183591c5242589c25d8e5695367d61b6cc5afc
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-27 12:27:20 +00:00
hjk
6b0d5d6036 Debugger: Clearly mark unavailable register contents
The previous display as 0, or 0x0...0e (LLDB on Linux) was
less useful.

Change-Id: I820ea5ef427b65633471c7c62e44851fcfd637cd
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 13:56:51 +00:00
hjk
0697c6d89a Debugger: Fix array access with LLDB if index is a long
Triggered with the QGraphicsPolygonItem dumper on Linux.

Change-Id: I1374ca308c732eb5c25da959d8b499515ed72e66
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 07:48:42 +00:00
hjk
c992a9ff08 Debugger: Add dumpers for QPolygon{,F} and QGraphicsPolygonItem
Change-Id: Ic246b28d44312a677c8d41194d4e0c324bda125d
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-24 14:48:33 +00:00
hjk
2ee4363d1d Debugger: Force LLDB round trip between stack and locals update
The stack might produce data (such as as the QML context in
native mixed debugging) that is needed for locals display.
While this doesn't work yet with LLDB anyway, the change
suppresses one soft access when accessing the top frame of
an empty stack (the usual case on the first update).

Change-Id: If931fbe940b8cda01cc6cc34429a2fcb33cd8d19
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-24 14:31:32 +00:00
hjk
3a7a1c2164 Debugger: Make some LLDB warning not break output format
Dumper.warn() tries to interleave the message with an
ongoing report, whereas the global warn prints directly,
possibly breaking the report parsing.

Change-Id: If753773d5eedf98a489f155d46d2911e04059461
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-24 13:27:23 +00:00
hjk
4198cc1441 Debugger: Don't re-check pending LLDB breakpoints
This partially reverts change 1d1695c2.

This doesn't seem to be needed with recent versions of LLDB anymore
and removes one source of "spurious" breakpoint-changed events.

Change-Id: I8140944a46bbc83173c0088117a88110b0872e8a
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-24 09:55:35 +00:00
hjk
aa67078276 Debugger: Implement basic value assignment for PdbEngine
Change-Id: I505c3e9c4a239ed381d525b5acaf1acf3a06a59a
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-13 17:05:29 +00:00