Start displaying QV4::Value again for numeric values
and QJSValue for ints, doubles and strings.
Change-Id: I18ce226c21168087ce280cb05aa0e250bd3187d9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Lowers the barrier for other debugger backends.
Change-Id: I09e0ad09548b6b4220175245cc0d845ac5aa29d0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
The model now supports dynamic node properties. e.g.:
Item {
property Item item: Item {
}
}
In this case Property::dynamicpropertyType() is Item and
Property::isDynamic() is true.
To create such a property I added:
NodeProperty::setDynamicTypeNameAndsetModelNode().
It is not supported to reparent nodes in an out of
dynamic node properties. The model throws an exception in this case.
This is currently not required on the application level and not
supported by the rewriter.
Change-Id: Ie05325663c481d8583dc45bee38b559c190fbb30
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If we use paths with spaces we cannot split them anymore so we have to
handle unix and windows differently.
Change-Id: Ibfc8c51cfe2ecd68e913ad84e0e1269eb7eeda02
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* Extract common stuff into the base class ClangException
* Remove unused exceptions TranslationUnitParseErrorException and
TranslationUnitReparseErrorException
* Do not send error messages to the Qt Creator side. The messages were
only generated when the backend crashed and while it was not yet fully
re-initialized (e.g. do code completion right after crash where the
document was not yet registered at the backend).
Change-Id: I91d98d5ef681ad487f7a2fd66f78fa7cd1e958df
Reviewed-by: David Schulz <david.schulz@qt.io>
This introduces a dumper types abstraction layer with classes
Dumper.{Value,Type,Field} wrapping either gdb.{Value,Type,Field}
or lldb.{SBValue,SBType,SBField} and uses it to move
to more direct memory accesses in the dumper implementation.
This way we can use duck typing for artificial intermediate
objects eliminating the need for {gdb.Value,lldb.SBValue}.cast()
in some case which are flaky in general and typically not
available in release builds.
As consequence QRegion and QVariant dumper work without debug
info now.
Change-Id: Iea2411175ef67f2bf651ee7eaade9879ed5ceba1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The "TranslationUnit parts" moved already to TranslationUnitCore.
Change-Id: I2bea7847e2b3e84fbfacc3d2dc43f180873349ac
Reviewed-by: David Schulz <david.schulz@qt.io>
Do not require directly passing the enclosing template.
Change-Id: Ie03bc58338fe003677a5f5311d86d70f499373ee
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
We don't want to disable RTTI in unittest so we require to compile them
with RTTI. You can disable yourself RTTI if you don't want them for some
reasons.
Change-Id: I76d05a36442305f379ce3d88b3f6ed4372127002
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
With up to 43 characters it's more probable to
not have a dirseparator in the generated string.
Change-Id: Ib59fc55eb0b78c9796e19006c057571d7d494e40
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
In some (legacy) C files, new and delete may be used for regular identifier.
There are some limitations:
* Header files have no 'implicit' type, and may be parsed as C++ or ObjC depending on the
other files in the project.
* QMakeProject use a single ProjectPart for C and C++ files, so there will still be the issue.
Change-Id: Iec11687b35f7ccf1e7c0d091b143ae90d950e440
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
If you have no LLVM installed it was impossible to compile the unit test.
But some unit test don't depend on LLVM. With this change it is now
possible to compile them.
Change-Id: Iac0c1b3cdf6c317e6ba4755acd5f8458db5a7451
Reviewed-by: David Schulz <david.schulz@qt.io>
Prevent operator selection to be ambiguous.
Change-Id: I1ff0d6aad8fe5ce24b0d1038c1b6121a595800fe
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
CXCodeComplete_IncludeBriefComments has to used if the translation unit
is using it too. Otherwise an assert is triggered.
Change-Id: Ia252ffd9c440144f21c2354c6885f7ae73de4b29
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Should have been done in
39103dee4f and
e2adf9b7bb respectively.
Change-Id: I4e16abf8820ed4f1e287505259d71d15e739e996
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
These items nowadays have a leading number and colon.
Change-Id: Ib274a7bc601cd06cf7b226f43b011c2b105cc12b
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
It doesn't make sense to distinguish between them. When the content
changes, the labels, the number of items, and the "empty" state
change.
Change-Id: I65f77f65828626fd76bfd968abf67b608b6e267b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
It was bumped to 14 in merge commit 1853f01a, due to a conflict in
unittest.pro which I confused with qtcreator.pri.
Change-Id: I1ec15d9d20d90c38849eea799a724f4c85fe36b5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Project template was changed in
b18e084fc0
Change-Id: I89bf518756cd7d7859ffc6e9a56f1aed2e7e435f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>