This is a partial revert of the type id change (bd2653fb) to get
the case of virtual bases work again, as it falls back to native
field accesses everywhere we have native types.
This is likely to be a performance regression with CDB/Python,
but since this combination is experimental and not used by
default in 4.2 getting GDB/LLDB right is more important.
Medium term we might want to have a more fine-grained approach
to use of type ids (e.g. use native field accesses on a case-by
-case base only for type with virtual inheritance)
Change-Id: I239111e6ce5f3365b750068bfc4dafb12be1d53c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The evaluate function of the cdb python module returns an integer
representing the address of the evaluated expression. If the expression
does not evaluate to a pointer the python module currently returns a
NoneType.
Change-Id: Ifc77109ef2161a3895a7661789f05134a4b64168
Reviewed-by: David Schulz <david.schulz@qt.io>
Looking up 'void' is known to cause hick ups.
Change-Id: I4c4b3bae5b5ac572404156edbd457003fbbf53f3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
QStringData is a typedef for QTypedArrayData<unsigned short>.
Cdb doesn't return typedefed type names, but the original type.
So we just need to call the QStringData dumper from the QTypedArrayData
dumper.
Change-Id: Id4e17ea8af3888e17c0d40bd9dcc5678490e845f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
"Separate display" can be triggered for QRasterPlatformPixmap on
the embeddded QImage.
Task-number: QTCREATORBUG-17107
Change-Id: Ib54a6f76f634b0dcf601836dc10609f212581d14
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Calling functions is currently not supported in the
cdb python dumper.
Change-Id: I07da5ba93ea3ad838e758ca79062ae9aa4e8fabc
Reviewed-by: hjk <hjk@qt.io>
This shouldn't be necessary but the task indicates otherwise.
Task-number: QTCREATORBUG-16965
Change-Id: I6df28c96e0acb3cd3eea56a5a931b36fbd85dcea
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Use '@' in type names as replacement for the namespace,
similarly to what the auto tests do.
Change-Id: Idc074f8d47a31cb942a35f3d4fe364d806f9610e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Use the field's type size if the reported field size is 0.
Change-Id: I7db49507d0ea7358b6db27dfa206f2b079bbf876
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
There seems to be race in the LLDB setup on Linux. Work around
by not doing serious work twice to be able to use the test at least.
Change-Id: I387a57d3c66e6c4209bd424af9be16f17acb98fa
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Move all the currentFoo initialization to DumperBase
Change-Id: I0a59715fe1550f466e78cbf678622dd8dfe1783c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
There's no threading involved on the cdb/python side.
Change-Id: Ibc1ad6fb5242a86450ca15f65cb57e4cae99d6ed
Reviewed-by: David Schulz <david.schulz@qt.io>
... and make the auto test infrastructure able to handle
a test. To pass the test, some Nim compiler must be
accessible.
Change-Id: I707aa72c0f3a2ea35c7131cba490cafb41617f6c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It doesn't seem to be needed anymore, and if it were, it'd be the
task of the back-end specific fromNativeType() functions to sanitize
type names.
Change-Id: I7c6af40aeacb2dbaaf73143e9fdcc1d866bf3f3d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>