Commit Graph

50929 Commits

Author SHA1 Message Date
hjk
96b907a1e8 Debugger: Fix QFiniteStack dumper and add missing auto test
Change-Id: If5f242f8d5184a0f2c62f6211f2ba89cda0cac07
Reviewed-by: hjk <hjk@qt.io>
2016-11-18 13:32:05 +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
Friedemann Kleint
3b1308bb43 TextEditor: Remove exported class QuickFixOperations
Define an operator << that accepts a raw pointer for the list of
QuickFixOperation::Ptr instead.

Fixes MSVC 17 warnings

src/corelib/tools/qlist.h(423): warning C4661: 'QVector<T> QList<T>::toVector(void) const': no suitable definition provided for explicit template instantiation request        ]
src/corelib/tools/qlist.h(389): note: see declaration of 'QList<TextEditor::QuickFixOperation::Ptr>::toVector'
src/corelib/tools/qlist.h(423): warning C4661: 'QSet<T> QList<T>::toSet(void) const': no suitable definition provided for explicit template instantiation request
src/corelib/tools/qlist.h(390): note: see declaration of 'QList<TextEditor::QuickFixOperation::Ptr>::toSet'
src/corelib/tools/qlist.h(423): warning C4661: 'QList<TextEditor::QuickFixOperation::Ptr> QList<TextEditor::QuickFixOperation::Ptr>::fromVector(const QVector<T> &)': no suitable definition provided for explicit template instantiation request
...

Task-number: QTBUG-57086
Change-Id: I879511656c39eb7a3eae54ea7daca3eca8ebe8d7
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-11-18 11:47:59 +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
a8697e4716 Debugger: Don't accumulate return value displays
This fixes a regression introduced with d771ba89.

Change-Id: Icc44ef9ad41f9e5cdb3848fae7a1ba8af2626344
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2016-11-18 11:14:49 +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
952c3e3b64 Debugger: Remove some of the inferior call in QVariant dumper
Change-Id: I1f1ac5c5ba59c36d3c3d6546b24a93d1b647f88a
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-11-18 08:02:35 +00:00
Christian Stenger
1eafa1540e Debugger: Lower kit restrictions for debugging
In some cases it can be useful to be able to debug although not
having a complete functional kit present. (e.g. debugging a
core file having an ABI for which you have a debugger but having
no respective compiler)

Change-Id: Ia2567c8e2dd6783e612802cc08f7767399aaf33f
Reviewed-by: hjk <hjk@qt.io>
2016-11-18 07:12:51 +00:00
hjk
61b408d110 Debugger: Force flushing of GDB output
... after continue and step. Otherwise there would be no reaction
after the inferior gets an external SIGKILL while stopped.

Task-number: QTCREATORBUG-17280
Change-Id: I57933e92194a3320d7aba81055755477f34af382
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-11-18 07:07:39 +00:00
David Schulz
eabccbdcb2 Debugger: Don't encapsulate integer in values for template args
Change-Id: Ib1bb2b01ff8eb1ed11c0f5785f3b4bb5f50c411a
Reviewed-by: hjk <hjk@qt.io>
2016-11-18 06:16:04 +00:00
Thiago Macieira
6a061b2a35 Add QDataStream operator<< and >> for Utf8StringVector
It's just a QVector, but let's be explicit.

Change-Id: Ic46ff326a6ba46bc877cfffd148325c9c1354fa5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-11-17 22:38:06 +00:00
Nikolai Kosjar
da54b1e6a9 Clang: Tests: Fix compilation
refactoringclient-test.cpp:126:76: error: no matching function for call to
'ClangRefactoring::RefactoringCompilerOptionsBuilder::build(CppTools::ProjectPart*,
CppTools::ProjectFile::Kind&)'

Broke with:

    commit 36d4d01cd3
    Clang: Take precompiled headers into account when parsing source files

Change-Id: I7c5a2edec0859584ea2b33e144178060788cd4d9
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2016-11-17 15:35:22 +00:00
Marco Bubke
89b3d53b27 Utils: Improve print function for SmallStringVector
Change-Id: I9dc66ddddf380d8e2af057719005f4d14a592396
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 15:07:55 +00:00
Marco Bubke
f11b746e60 Utils: Improve debug output of SmallString
Change-Id: I738ac9d139271b7d154dd39f30ae3c08b5e5b921
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 15:06:58 +00:00
Marco Bubke
19a00f418f Utils: Add const reverse iterators to SmallString
Change-Id: Iefd9d6abafbe38dcb7d3ed9ea200ac3244902433
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 15:06:46 +00:00
Marco Bubke
8a16151601 UnitTests: Add QByteArray printer
Change-Id: I1461db8b5337e6e6aa387edc4da72ca3379d8b73
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 15:06:31 +00:00
hjk
572ba812d2 Debugger: Fix over-quoting in LLDB breakpoint reporting
The 'output' bit is inserted at report time, not at callback
script generation time.

Change-Id: Ibb5c9b09d8391d1be86b8f110e32ab1c90f6bab2
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-11-17 14:47:16 +00:00
Tobias Hunger
591d693d0d CMake: Move code to read CMakeCache.txt into CMakeItem class
Change-Id: Ie5d76a2b50007c80d68b2e97d3339a582afce469
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 13:10:47 +00:00
Jarek Kobus
77c3cbd4f0 Fix updating ui resources after creating new form
Before we have tried to update resources, however
it was done too early and ui file, which
has been created, was not inserted to any project yet.
We were connected to ProjectTree::filesAdded signal
and apparently whenever it is sent the added ui file
is still not inserted to the project, thought
the signal informs about that fact.

Now we connect to every project's fileListChanged() signal instead.

Task-number: QTCREATORBUG-15560
Change-Id: I11883a0d87fdc7c46897cef68466c1038dbaefb8
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-11-17 13:05:14 +00:00
hjk
0334438b40 Debugger: Use more direct access in std::deque dumper
This effectively fixes the LLDB dumper for std::deque and std::stack by
avoiding a code path in which LLDB returns wrong data (the type and
offset for the _Deque_iterator::_M_first member - surprisingly the
other three members there get reported correctly).

Change-Id: Iae1ba8b81987442ed2d486b383a145a77ce49cd7
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2016-11-17 11:07:18 +00:00
Tobias Hunger
3422e5cded CMake: Clean up more paths in server-mode
Change-Id: Ifd578cbc7516f66ad52cc13faca0ee733dbc7512
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 10:57:23 +00:00
Tobias Hunger
a7aeec22ce CMake: Unify names for important directories in server-mode
Unify names for important directories in the project tree of
server-mode cmake projects.

Change-Id: I6354e0a1cfb71f9038d9110438622c824deedebe
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 10:57:16 +00:00
Thomas Hartmann
6890e4e131 QmlJSCheck: Allow Math. function in ui.qml files
The Math. function like Math.max() are quite useful
to define more complex layouts. Therefore we allow them.

Change-Id: Ia95dcbcc1b8e96c117650dc8643da4a9de0ecdba
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-11-17 10:34:56 +00:00
Thomas Hartmann
85d288e3c3 QmlDesigner: Disable disk cache in puppet
The disk cache time stamp is only accurate up to a second
and there might be .qmlc files from the actual application.

Change-Id: I6ec9cfdda8eb7aba5a630ac577d2cef999a8132c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-17 10:34:20 +00:00
Jarek Kobus
fd460a11dc Add some missing consts
Change-Id: I1c5122b893e7255237310562fcad16bc53f15fd7
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-11-17 10:31:27 +00:00
Jarek Kobus
8c36249ffa Add missing overrides
Change-Id: I7e27a273044542537423c8f4b9ab5235c3fabc22
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-11-17 10:31:18 +00:00
J-P Nurmi
1c4a5529f4 Update QQC2 imports in qt5QtQuick2-bundle.json for Qt 5.8
Change-Id: I275ec57ecefaee8dc08981ad7eb57c40e47889ce
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-16 16:15:16 +00:00
hjk
84417cc122 Debugger: Use more direct access to QFile object guts
This still does not solve the QFile dumper test fail with LLDB/Linux,
but its one obstactle less. The remaining one is LLDB not reporting
the QFile base object size at all.

Change-Id: I3144cf9469c4456d21b8c220c9df1cd890348491
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 15:12:13 +00:00
Eike Ziller
4026864f38 Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/plugins/clangrefactoring/refactoringengine.cpp
	src/tools/clangrefactoringbackend/source/symbolfinder.cpp

Change-Id: I7c1c87f3b8ade43a07f6668565501042e967fa8b
2016-11-16 16:04:59 +01:00
Tobias Hunger
6e17882bfc ProjectExplorer: Use Utils::FileName in ProjectImporter API
Change-Id: I60e05f1bd892b508db90bc48837e29e2725bf333
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-16 13:36:29 +00:00
Tobias Hunger
028b1170c9 TextEditor: Fix warnings about inconsitent use of override
Change-Id: I7fd388580dd133524616704a2108b683dd45499e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-11-16 13:35:53 +00:00
hjk
82818cb90b Debugger: Improve QAtomicPointer dumper
More compact display and arbitrary inner types.

Change-Id: I68bc1f5cc88f51e993e6e8a91556d9d745a2574a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 13:34:04 +00:00
Kai Koehne
ab16549024 Document building QtC with system qbs
Change-Id: I551d2a909db7875183b74160cedc958b4a1d5e8c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2016-11-16 11:42:57 +00:00
hjk
f0115b6664 Debugger: Disable some of the LLDB inheritance dumper
Both LLDB 3.8/Linux and 360.x/Mac cannot display the contents
of a virtual base class when accessed to a 'secondary' path.
The problem is with LLDB itself, so don't expect Creator tests
to pass in those cases.

Change-Id: I25b005d66fa9f64766a4cc0aaaa2c865b6df8c5f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 10:05:42 +00:00
hjk
d7408f1fa8 Debugger: Make std::set::iterator dumper test pass for libc++
Change-Id: Ib5f9a0d71c130dcbcc14719b85f13582bbeaf74e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 10:05:17 +00:00
Przemyslaw Gorszkowski
6b2cf5cd03 FindInFiles: make possible to have more than one extension
This change adds a possibility to add more than
one external tool which can be used instead of internal finder.
Currently there is one extension: 'gitgrep'.
By default we use internal finder.

Change-Id: If644358552f3cea9ebda8308539322a1b6d3ab77
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-11-16 09:52: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
b26400e8ef Debugger: Workaround gdb.lookup_symbol ignoring QArrayData::shared_null
There have been cases observed where 'p QArrayData::shared_null' finds
valid symbols that are not found using gdb.lookup_symbols. The cause
for that is unknown.

Apply an expensive workaround by checking for (the equivalent of)
a working 'p QArrayData::shared_null' but execute it only when
a libQt5Core was found. This keeps the overhead for non-Qt setups
at a bearable (unsuccessful) iteration over known shared object
names.

Change-Id: Id398673b938d3c3a72c24317abdbefbe793e54df
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 09:32:42 +00:00
Denis Klychkov
36d4d01cd3 Clang: Take precompiled headers into account when parsing source files
Task-number: QTCREATORBUG-15590
Change-Id: Icbfce4ffd6e9f9802641d35d898fa1dc1c4c18ee
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-11-16 09:10:14 +00:00
Christian Stenger
4ae07377db Tools: Disable clangrefactoringbackend again
The plugin is disabled and the backend causes compile issues
with older gcc.

Change-Id: I6c809d397872a77168ae4f51d01e9e4f5af3b64f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-16 09:00:16 +00:00
Nikolai Kosjar
569f4499c0 iOS: Fix build
Include <memory> for std::shared_ptr.

Change-Id: I549eef8e8dc42b58b07e3528d55193ed8c54dd7e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
(cherry picked from commit 6614b7a276)
2016-11-16 08:51:05 +00:00
Vikas Pachdha
f28cefce8c iOS: Make iOS simulator usage asynchronous
Change-Id: I5770b372542690560680ef3208a284c7f0cf6670
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
(cherry picked from commit aa355b4f70)
2016-11-16 08:50:45 +00:00
Nikolai Kosjar
6614b7a276 iOS: Fix build
Include <memory> for std::shared_ptr.

Change-Id: I549eef8e8dc42b58b07e3528d55193ed8c54dd7e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-11-16 08:47:14 +00:00
hjk
88ff6cd5ae Debugger: Use a more direct way to detect LLDB bitfields
It has a function directly doing that, use it instead of
guessing (badly, in some cases)

Change-Id: I1ce317c28d60f820f8e868e3c0c5a665f8de6cb7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 08:38:35 +00:00
hjk
80b2a4f1ba Debugger: Expose DebuggerKitInformation::ConfigurationErrors
... to allow more fine-grained decision making for kit choosers.

Change-Id: I9a4e97f7b4f4b074e1c764f6b134c15e2896dc79
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 08:37:35 +00:00
hjk
5b058ebb34 Debugger: Make QRegExp dumper test pass on Mac
We need DYLD_IMAGE_SUFFIX=_debug for the captures()
cache warming call to succeed even if the actual access
is by offset only.

Change-Id: I24a90b4c4187459904f14a664b992a5bba9a20eb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-16 08:37:18 +00:00
Jarek Kobus
1a9676537f Fix double space
Change-Id: Iecdbf5e2f837253ccda9e67a86023614a639a828
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-11-16 07:13:52 +00:00
Jarek Kobus
6bdec50001 Fix string
Change-Id: Id540eb7b7e85618bffd7e44610df2e22748c494f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2016-11-16 07:13:28 +00:00
Vikas Pachdha
aa355b4f70 iOS: Make iOS simulator usage asynchronous
Change-Id: I5770b372542690560680ef3208a284c7f0cf6670
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-11-16 06:54:26 +00:00