diff options
author | hjk <hjk@theqtcompany.com> | 2016-04-18 16:27:54 +0200 |
---|---|---|
committer | hjk <hjk@theqtcompany.com> | 2016-04-20 15:50:53 +0000 |
commit | 43b831083088ca5e502328edb7b01b0fb96e612b (patch) | |
tree | 618165d2fe66798e6827fb209d81d149efba8f9f /share/qtcreator/debugger | |
parent | d432b1447284cb95f966330c9dced175aa3fc21f (diff) | |
download | qt-creator-43b831083088ca5e502328edb7b01b0fb96e612b.tar.gz |
Debugger: Disable dumper for QVariants with user defined types for LLDB
The type info is not directly accessible to the debugger. The workaround
used so far generally works for initialized data, but can force loading
all debug information otherwise. The behavior is exceptionally bad
for LLDB 3.7 with GCC 5.x/C++14 due DW_TAG_base_type 'auto' encoded with
DW_ATE = 0x0, bit_size = 0 produced by GCC and not understood by LLDB.
Change-Id: I2b28b8a6aa15751c8e797bcbf501b81622680596
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Diffstat (limited to 'share/qtcreator/debugger')
-rw-r--r-- | share/qtcreator/debugger/qttypes.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/share/qtcreator/debugger/qttypes.py b/share/qtcreator/debugger/qttypes.py index ce475385a0..6769bfa0ec 100644 --- a/share/qtcreator/debugger/qttypes.py +++ b/share/qtcreator/debugger/qttypes.py @@ -2197,6 +2197,13 @@ def qdump__QVariant(d, value): return innert + # Do not handle user types. The workaround below works, sometimes + # for inialized data, but can force loading all debug information + # and trigger parse errors "error: need to add support for + # DW_TAG_base_type 'auto' encoded with DW_ATE = 0x0, bit_size = 0" + # (LLDB 3.7/Linux) + if d.isLldb and platform.system() == "Linux": + return None # User types. d_ptr = value["d"] |