David Schulz
86edeb9722
Debugger: Use native value for pointer dereference
...
Change-Id: Ibde6ff382e7adc0c196837c9eba04391c0a2c3a0
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-28 09:22:28 +00:00
Orgad Shaneh
91e9ba7ede
Dumper: Remove unused function
...
Change-Id: Ibc8cf420170b084c05fdaf1d6a7b26594bcb3f24
Reviewed-by: hjk <hjk@qt.io >
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
2017-03-21 14:57:29 +00:00
David Schulz
33e8f2e099
Debugger: Fix QObject detection on Windows
...
Change-Id: I054161dfde0c03167a6d57861b069c403330e746
Reviewed-by: hjk <hjk@qt.io >
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-21 09:04:34 +00:00
Christian Stenger
2b6a912e6b
Dumper: Comment out unused function
...
Change-Id: Iafc2b0892739c43699631f6ca8ce0d51222c893c
Reviewed-by: hjk <hjk@qt.io >
2017-03-16 14:58:58 +00:00
Christian Stenger
8204d794e2
Dumper: Fix missing import
...
Additonally ensure that code path works with Python 2.7+ and 3+.
Change-Id: I6c7895eeb830259dc07bb7f64049ae51cb814c7f
Reviewed-by: hjk <hjk@qt.io >
2017-03-16 14:57:43 +00:00
hjk
fd0bf9df64
Debugger: Make QObject connections a bit better accessible
...
Change-Id: I5e70a61db73f89dc48efc82bc6aa4e42c44ba6d5
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-16 10:12:40 +00:00
hjk
61501042bc
Debugger: Simplify Qt namespace guessing code
...
We get proper notification when QtCore is loaded now, and we either
got it, or not.
Change-Id: I9485126d9b15b8d859ba440f3ba1623f03527ef8
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-15 11:36:18 +00:00
hjk
fb213b5826
Debugger: Use a named tuple for Dumper.Field
...
Makes it clear that this is meant to be immutable and is supposedly
faster.
Task-number: QTCREATORBUG-17823
Change-Id: Ie5d67b793e0bc4f704981d5161efc12bcc22100a
Reviewed-by: David Schulz <david.schulz@qt.io >
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-09 08:20:46 +00:00
David Schulz
4f91cb3d0c
Debugger: Do not lookup types when accessing the type name
...
Return the typeId instead of triggering a type lookup when accessing the
type name and no TypeData is available.
Change-Id: I4d46d5356d38184d73427e5a65c3986d30520cf9
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
Reviewed-by: hjk <hjk@qt.io >
2017-03-08 09:52:30 +00:00
David Schulz
530f7972eb
Debugger: Optimize QObject::staticMetaObject lookup
...
Change-Id: I8c06472ce4e33b7c4203934d93b9cc8c8ae95ce2
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-07 09:46:23 +00:00
David Schulz
51d14393c4
Debugger: Fix double and (unsigned) long long alignment
...
Change-Id: Ia1ee70a047b3e659730e5a19b874f1f2e567d8ed
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-03 12:57:28 +00:00
David Schulz
aafb17ae83
Debugger: Add enum value dumper to cdbbridge
...
Change-Id: I40f1556599be7581eeab0c75b034696ac22a7131
Reviewed-by: hjk <hjk@qt.io >
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-03-01 10:07:49 +00:00
Eike Ziller
e724934393
Merge remote-tracking branch 'origin/4.2'
...
Conflicts:
doc/src/qtquick/creator-tutorial-create-qq-project.qdocinc
doc/src/qtquick/qtquick-creating.qdoc
doc/src/qtquick/qtquick-uiforms-tutorial.qdoc
share/qtcreator/welcomescreen/qtcreator_tutorials.xml
src/plugins/git/gitgrep.cpp
src/shared/qbs
Change-Id: I6f4d168d888d9547c3af0819f79cc9ebb4186ca0
2017-02-14 15:32:04 +01:00
Orgad Shaneh
2b50fec73b
Debugger: Fix int casting for bitfields
...
Change-Id: Iea3647594ffa3b2024ae469d844fa73028a0ab62
Reviewed-by: hjk <hjk@qt.io >
2017-02-08 16:54:45 +00:00
hjk
92263a0535
Debugger: Do not try to access type information without loaded binary
...
Amends b5b233d69e
.
Change-Id: I24857b1ddfd3e5e1d234aac4e9871df4faf1c8fc
Reviewed-by: David Schulz <david.schulz@qt.io >
2017-01-31 14:09:36 +00:00
David Schulz
b5b233d69e
Debugger: Hardcode QChar type
...
QChar lookup doesn't always return the expected type. Get ahead of
this by hardcoding the type data on initialization.
Change-Id: Ie25c27521afeddc3da917242ce64df3901bcc80b
Reviewed-by: hjk <hjk@qt.io >
2017-01-31 10:00:13 +00:00
David Schulz
10df40ca5e
Debugger: Extract virtual function table dumper
...
Change-Id: I729186d36200967d6ca229e639ceb864f69240f7
Reviewed-by: hjk <hjk@qt.io >
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2017-01-26 11:22:34 +00:00
Eike Ziller
589fedf455
Merge remote-tracking branch 'origin/4.2'
...
Conflicts:
qbs/modules/qtc/qtc.qbs
qtcreator.pri
src/plugins/projectexplorer/kitinformation.cpp
Change-Id: I94299b069418586db97d1d596a252794e4037556
2016-12-20 17:14:19 +01:00
hjk
ffbe6148e8
Debugger: Inline putStringValueByAddress into its only user
...
Change-Id: I858f113507ad5712962dc6568e28230ff6dc2916
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-19 10:37:32 +00:00
hjk
fb57391767
Debugger: Make gdbbridge fetchVariable output similar to lldbbridge's
...
Change-Id: I11fc7d163dbd6b7deb5e88cac65dc61df3352411
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-19 10:37:16 +00:00
hjk
996a697094
Debugger: Fix QObject property extraction in namespaced Qt builds
...
Bail out on error results as early as possible.
The accessor always exists in libQt5Core, but it can't be found
when using a wrongly mangled name. Use the right one, and add
another sanity check before actually using the function.
Change-Id: I57975be188ca6b03836c0968e59d9603b0eecf27
Reviewed-by: Eike Ziller <eike.ziller@qt.io >
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-16 09:00:03 +00:00
hjk
0e6c9d26f1
Debugger: Fix pointer arithmetic in dumper framework
...
Task-number: QTCREATORBUG-17428
Change-Id: I1e3a682a6f412af51e191dc783b89ff266020e3b
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-14 14:23:37 +00:00
Orgad Shaneh
05d037a71a
Dumper: Re-add Dumper.templateArgument()
...
Removed in 2244e2b26c
. Required for
backward compatibility.
Change-Id: I7255002ad1d6e6b4d04f1fb2a8fa96e3eba65d6b
Reviewed-by: hjk <hjk@qt.io >
2016-12-13 13:26:12 +00:00
hjk
2497f5ea1d
Debugger: Remove unused createBitfieldValue function
...
Change-Id: Ie439d9cd551c33e9c5db6c16e8d221d2c75a7218
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
2016-12-07 10:17:47 +00:00
Christian Stenger
983936f975
Dumper: Fix QObject detection when using procedure linkage tables
...
Change-Id: I3ac9889b822cb30d2ccdb6a7e2452e753cc3f2df
Reviewed-by: hjk <hjk@qt.io >
2016-12-02 14:44:08 +00:00
hjk
dc2724a3f7
Debugger: Allow QObject property extraction without debug info
...
Task-number: QTCREATORBUG-16908
Change-Id: I1e1e9d91a6317808610f39868383b67e5c80a9a4
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-02 13:26:00 +00:00
hjk
2275d68373
Debugger: Switch on QObject name display by default
...
... and use the option to govern general QObject guts display.
This allows people to completely avoid the performance impact
of attempted QObject display and still makes the feature
more prominent for our favorite use case.
Change-Id: I1e53b6448f646ab7eea9168a3cd24c77769e6328
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-02 11:23:46 +00:00
hjk
2d5e6ef232
Debugger: Fix QObject parent pointer display
...
Change-Id: If8b6c7415d5cd6b8e5df6c2d760b015e3077c20f
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-02 06:57:11 +00:00
hjk
a7fb4cd3ed
Debugger: Make QStandardItem dumper work without debug info
...
Change-Id: Iccdc693616558d2d224c1145eee78f903792c4a6
Task-number: QTCREATORBUG-16908
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-12-01 14:30:37 +00:00
hjk
328f0c32e6
Debugger: Always display bald pointers as dereferencable
...
The result might not make sense, but the user should
have the option to check for himself.
Change-Id: I1792452906a5a27fd57b8f531792e63ef63033c8
Reviewed-by: hjk <hjk@qt.io >
2016-11-29 14:29:42 +00:00
hjk
b18ac1faec
Debugger: Make QStandardItem test pass without debuginfo
...
Change-Id: I9afbe8c76b6ff0797859f72741941a9ed34e57a1
Reviewed-by: hjk <hjk@qt.io >
2016-11-24 16:24:30 +00:00
hjk
a225158c24
Debugger: Simplify dumping of paired items
...
Change-Id: I191801489d88c6abd15c6f3cd1cc6df97c8668d6
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-24 15:12:14 +00:00
hjk
9d7a1fcb0f
Debugger: Add a QStandardItem dumper
...
Change-Id: I503b17e1f36158a774dcf096b19ba628f0cc0205
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-24 09:51:40 +00:00
David Schulz
c8bb93de6b
Debugger: Do not print warning for auto padding
...
Change-Id: I5fc1cf185fdf9d3928a68e952aeb9fd39fe87c8a
Reviewed-by: hjk <hjk@qt.io >
2016-11-23 08:26:21 +00:00
hjk
5b43ff7ad9
Debugger: Make QV4 dumper test pass with Qt 5.8.0
...
The layout of a QV4Value has changed in Qt Declarative change 2afb54fb.
Change-Id: Iab618cc128be242c786b9a7460e80e8e49ee6544
Reviewed-by: hjk <hjk@qt.io >
2016-11-18 13:31:26 +00:00
hjk
3c3bccf0fb
Debugger: Also support boost 1.55 unordered_maps
...
Change-Id: Id9ac4ecc8c61d4224f5840df2ec0a75c3c305825
Reviewed-by: hjk <hjk@qt.io >
2016-11-18 12:11:56 +00:00
David Schulz
f8c86fd95f
Debugger: Detect msvc virtual function pointer table
...
Change-Id: I51d82b692638932e35f22a5bb9286eecad577ed7
Reviewed-by: hjk <hjk@qt.io >
2016-11-18 11:41:36 +00:00
hjk
c9067ff28c
Debugger: Fix boost::unordered_set dumper for older boost versions
...
Somewhere between 1.48 and 1.58 structure layout changed.
Change-Id: Id8bcb473f364537342261dd2596f9f1bdacb5c79
Reviewed-by: hjk <hjk@qt.io >
2016-11-18 08:21:05 +00:00
hjk
f42d44a481
Debugger: Recognize '-' as start of numeric template argument
...
Change-Id: Ibc0fd730655378dca3dc231dbad36981364ccf70
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-16 09:38:59 +00:00
hjk
e4e1bdb27a
Debugger: Robustify typedef member lookup
...
Some code path did not resolve typedefs when looking up
struct members by name, making e.g. the BoostList dumper
fail for LLDB.
Change-Id: I7adf235cff3941574cab9f03d6f15ec5f3e2f0bd
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-14 12:37:31 +00:00
hjk
8fce605913
Debugger: Display {un}signed char* similar char*
...
Task-number: QTCREATORBUG-17236
Change-Id: Ibbc58807572c6d1785f20948992f7a2c0dcc87f8
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-11 09:07:41 +00:00
hjk
ae4d3c52e6
Debugger: Sanitize report of timings
...
Use Python's list and dict output directly, instead of
a manually stringified version thereof. Also, report
milliseconds instead of microseconds.
Change-Id: Ibcbdea732e7ecc58fd672bc5da794832215865b4
Reviewed-by: hjk <hjk@qt.io >
2016-11-10 20:14:25 +00:00
hjk
67505423e6
Debugger: Dumper code cosmetics
...
Mostly left-overs from earlier reorganization.
Change-Id: I94f44efa1aab1e17de3c0fec6c230722149a1404
Reviewed-by: hjk <hjk@qt.io >
2016-11-10 19:29:02 +00:00
hjk
9040c4081e
Debugger: Use less GDB inferior calls in normal field extraction
...
They are not usable in core files.
Change-Id: I2134b61f27c27862c12a679d0acf7bebc9fcc7a2
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
Reviewed-by: hjk <hjk@qt.io >
2016-11-10 16:20:37 +00:00
hjk
77bd581f49
Debugger: Re-enable access to dumper.Value by integral index
...
Task-number: QTCREATORBUG-17220
Change-Id: I63632a90e2518151b3bf20b1241c24f9808ec39c
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-10 07:02:58 +00:00
hjk
537c8721b7
Debugger: Also display symbolic names for pointers
...
GDB-only for now.
Task-number: QTCREATORBUG-7550
Change-Id: I5a1096028e7454937b727419ec73f5fd979f4e8b
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-07 10:44:29 +00:00
hjk
6f1bd8bbdb
Debugger: Consolidate name handling of anonymous structs
...
Change-Id: I44acfdccb5cad02c95270490e319caca334c8a4b
Reviewed-by: hjk <hjk@qt.io >
2016-11-04 21:21:26 +00:00
hjk
5276f35ae3
Debugger: Move base class numbering to generic code
...
Change-Id: I046a587f9fbf2a6345f3c0432a1b5937069a9304
Reviewed-by: hjk <hjk@qt.io >
2016-11-04 20:47:09 +00:00
hjk
7dbc62a182
Debugger: Robustify special argv detection
...
Check for Pointer(Pointer(Char)) instead of a 'char **' name
which fails to match 'char**'.
Change-Id: Ie3d523924e64156a32df6db5c87997bb88f125a1
Reviewed-by: hjk <hjk@qt.io >
2016-11-03 16:30:13 +00:00
hjk
3be260ecc5
Debugger: Replace 'first base' guessing logic
...
Use the fact that the order of the first three vtable entries of a
QObject is fixed and the size of their implementations is roughly
known.
Change-Id: I3d13f594cb1c1f162a520da18b2bc2aaba852092
Reviewed-by: Christian Stenger <christian.stenger@qt.io >
2016-11-02 15:11:32 +00:00