Commit Graph

933 Commits

Author SHA1 Message Date
hjk
48915c6231 Debugger: Rename variables named 'type' in dumpers
It's confusing in the presence of the global function of that name,
and it's better to distinguish type names and type objects anyway.

Change-Id: I3e0674dbc96a8e2b245ed61fabd2fe7cac5a72e5
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-12 10:27:46 +01:00
hjk
5e19f322cf Debugger: Move listOfLocals to Dumper class
We will need access to more dumper data later.

Change-Id: Id8fe09b192ac7d2ae822a0323cda13c0e2ff81e3
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-12 10:27:18 +01:00
hjk
48c6decb07 Debugger: Remove some spaces in debug output
Change-Id: I69c4a00d4dfef91aa2727c295246845bef70b4bc
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-12-12 10:14:32 +01:00
hjk
62803ada4d Debugger: Add some convenience helpers for python dumpers
Change-Id: I7fc35ea571895024e9da597d30167e02eda7df47
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-12 10:08:42 +01:00
hjk
7b1c4d65b1 Debugger: Use stricter access test in pointer pretty printer
Change-Id: I34901ece94e9ab1d8ae929fda33ef1ee647d9d75
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-12-12 09:53:38 +01:00
Eike Ziller
541d00453a Merge remote-tracking branch 'origin/3.3'
Conflicts:
	qtcreator.pri
	qtcreator.qbs
	src/plugins/projectexplorer/projectexplorer.cpp
	src/shared/qbs

Change-Id: I6d91042bb48314d00be721099aed19feca74e0ce
2014-12-10 13:20:02 +01:00
hjk
6d6e8de4a0 Debugger: Use Python instead of GDB/MI to retrieve stack
This will be useful to create artificial QML stack frames.

Change-Id: I41cb87f8dea69d88695fea46a1ae2b0270cbec1a
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-08 13:04:24 +01:00
hjk
d9a527f8ad Debugger: Fix QV4::Value dumper
Only 64 bit for now.

Change-Id: I622ff5ab8632a73901e83f5331dcd2c3ea129d3c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-03 15:57:36 +01:00
hjk
3d4cedb1f0 Debugger: Fix map dumper with LLDB-320.x
The underlying problem here is still that we can deduce
the item type from the map type except by string manipulation
and type lookup. Which fails at times.

Change-Id: Ibe6a8ca1fbd84c43c7d31b65e017792d1b6a1e0b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-03 12:08:08 +01:00
hjk
a4a7a4b25f Debugger: Add command for simpler dumper reloading
... to facilitate shorter round trips in dumper development.

Change-Id: Ie457293fd137528d74008fc11137b47d92f3859d
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-12-02 10:40:10 +01:00
hjk
f9f2a75499 Debugger: Fix QRegion dumper on 32 bit for Qt < 5.4
Change-Id: I2554ae77154d88185120bf661f9e732485d92a28
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-12-02 10:39:01 +01:00
hjk
bf9a3b2020 Debugger: Fix LLDB reference display for LLDB 320.x
There is seemingly still no proper API for that, and
the old hack broke. Use a new one.

Change-Id: I9e638ca1fbd84c43c7d31b65e017792d1b6a1e0b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-28 14:55:03 +01:00
hjk
f395bc9076 Debugger: Fix reference dumping with LLDB-300.x
The old code worked around some issue that is not present
anymore and breaks now by itself. So remove the workaround.

Change-Id: I41a017ced91198bdc4e822cfcc1c45580945a773
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-26 15:11:31 +01:00
hjk
298e2de7df Debugger: Centralize handling of optimized out values with GDB
There were a couple of situation where the is_optimized_out flag
was not used and later produced (caught) exceptions on access,
or where the still availably type was not shown.

Change-Id: I7ad5aa09a19357e50739d9fdf32f7423e30fe011
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-18 16:14:50 +01:00
hjk
e6020b7067 Debugger: Report stack after frame switching with LLDB
Change-Id: Ibbaa52dc8c0703f3245cac2ca15b942e3006993a
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-17 09:45:50 +01:00
hjk
195400b42e Debugger: Explicitly convert division result to int in dumper
This can cause "TypeError: 'float' object cannot be interpreted as
an integer" otherwise.

Change-Id: Icae026f8f47edb686e22ce417f3bbdf41bbf0bc1
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-15 13:29:51 +01:00
hjk
7066e3348d Debugger: Improve tooltip for out-of-scope items with gdb
Previously, hovering over 'i' when stopped in main()

   int foo() { int i; }
   int main() {}

produced a tooltip without contents, now there is an
item saying "<not accessible>"

Change-Id: Id4de72541f74af93ba65c2a9508cf21e1dcd6569
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-14 13:38:07 +01:00
hjk
1fef3c41b9 Debugger: Fix QRegion dumper for Qt 5.4
The layout has changed in ee324e4ed527.

Change-Id: I4b5f47f6526bf1218fdb79dc625f7482af21012b
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-11-07 13:57:10 +01:00
Orgad Shaneh
4336f8874e Dumper: Adapt Token dumper 3.2
Change-Id: If7d6ba7265620edb14d258884b26578c36da2651
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-10-31 11:13:26 +01:00
hjk
6aa84464f6 Debugger: Be more verbose in dumper debug output
One of the should-not-happen situations seem to happen.
Add extra output to help to track it down.

Change-Id: I40bad85ce2fbaf1f02043b3d97f657461f5a1995
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-10-21 09:38:55 +02:00
hjk
65ebdc7e03 Debugger: Fix recent typo in putSimpleCharArray
The joys of scripting languages without compile time checks.

Change-Id: Ic9405d549f3e60d5b834350fa3bce1d4d4609747
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-10-14 21:09:50 +02:00
Orgad Shaneh
1ff1b8dbfd Debugger: Remove unused values from DebuggerStartMode
Change-Id: I84ec3dea504e51bb925c925564aa9b5c84133fbf
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-10-14 18:19:38 +02:00
Eike Ziller
ea27143239 Merge remote-tracking branch 'origin/3.2'
Conflicts:
	src/libs/utils/ipaddresslineedit.cpp
	src/libs/utils/logging.h
	src/plugins/analyzerbase/AnalyzerBase.pluginspec.in
	src/plugins/android/Android.pluginspec.in
	src/plugins/android/androiddeploystep.cpp
	src/plugins/android/androiddeploystep.h
	src/plugins/android/androiddeploystepfactory.cpp
	src/plugins/android/androiddeploystepwidget.cpp
	src/plugins/android/androidpackagecreationfactory.cpp
	src/plugins/android/androidpackagecreationstep.cpp
	src/plugins/android/androidpackagecreationstep.h
	src/plugins/android/androidpackagecreationwidget.cpp
	src/plugins/android/androidpackagecreationwidget.h
	src/plugins/android/javafilewizard.cpp
	src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in
	src/plugins/baremetal/BareMetal.pluginspec.in
	src/plugins/bazaar/Bazaar.pluginspec.in
	src/plugins/beautifier/Beautifier.pluginspec.in
	src/plugins/bineditor/BinEditor.pluginspec.in
	src/plugins/bookmarks/Bookmarks.pluginspec.in
	src/plugins/clangcodemodel/ClangCodeModel.pluginspec.in
	src/plugins/clangcodemodel/clanghighlightingsupport.cpp
	src/plugins/clangcodemodel/clangsymbolsearcher.cpp
	src/plugins/classview/ClassView.pluginspec.in
	src/plugins/clearcase/ClearCase.pluginspec.in
	src/plugins/cmakeprojectmanager/CMakeProjectManager.pluginspec.in
	src/plugins/cmakeprojectmanager/cmakeeditorfactory.cpp
	src/plugins/cmakeprojectmanager/cmakehighlighter.cpp
	src/plugins/coreplugin/Core.pluginspec.in
	src/plugins/cpaster/CodePaster.pluginspec.in
	src/plugins/cppeditor/CppEditor.pluginspec.in
	src/plugins/cppeditor/cppfilewizard.cpp
	src/plugins/cpptools/CppTools.pluginspec.in
	src/plugins/cpptools/cpphighlightingsupportinternal.cpp
	src/plugins/cpptools/cppmodelmanagerinterface.cpp
	src/plugins/cpptools/cppmodelmanagerinterface.h
	src/plugins/cvs/CVS.pluginspec.in
	src/plugins/debugger/Debugger.pluginspec.in
	src/plugins/designer/Designer.pluginspec.in
	src/plugins/diffeditor/DiffEditor.pluginspec.in
	src/plugins/emacskeys/EmacsKeys.pluginspec.in
	src/plugins/fakevim/FakeVim.pluginspec.in
	src/plugins/genericprojectmanager/GenericProjectManager.pluginspec.in
	src/plugins/git/Git.pluginspec.in
	src/plugins/git/gitorious/gitorious.cpp
	src/plugins/git/gitorious/gitorious.h
	src/plugins/git/gitorious/gitoriousclonewizard.cpp
	src/plugins/git/gitorious/gitorioushostwidget.cpp
	src/plugins/git/gitorious/gitorioushostwidget.h
	src/plugins/git/gitorious/gitorioushostwizardpage.cpp
	src/plugins/git/gitorious/gitoriousprojectwidget.cpp
	src/plugins/git/gitorious/gitoriousprojectwidget.h
	src/plugins/git/gitorious/gitoriousprojectwizardpage.cpp
	src/plugins/git/gitorious/gitoriousprojectwizardpage.h
	src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp
	src/plugins/git/gitorious/gitoriousrepositorywizardpage.h
	src/plugins/glsleditor/GLSLEditor.pluginspec.in
	src/plugins/glsleditor/glsleditorfactory.cpp
	src/plugins/glsleditor/glslfilewizard.cpp
	src/plugins/helloworld/HelloWorld.pluginspec.in
	src/plugins/help/Help.pluginspec.in
	src/plugins/imageviewer/ImageViewer.pluginspec.in
	src/plugins/ios/Ios.pluginspec.in
	src/plugins/macros/Macros.pluginspec.in
	src/plugins/mercurial/Mercurial.pluginspec.in
	src/plugins/perforce/Perforce.pluginspec.in
	src/plugins/projectexplorer/ProjectExplorer.pluginspec.in
	src/plugins/pythoneditor/PythonEditor.pluginspec.in
	src/plugins/pythoneditor/pythoneditorwidget.cpp
	src/plugins/pythoneditor/wizard/pythonfilewizard.cpp
	src/plugins/qbsprojectmanager/QbsProjectManager.pluginspec.in
	src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
	src/plugins/qmakeprojectmanager/QmakeProjectManager.pluginspec.in
	src/plugins/qmakeprojectmanager/profileeditorfactory.cpp
	src/plugins/qmldesigner/QmlDesigner.pluginspec.in
	src/plugins/qmljseditor/QmlJSEditor.pluginspec.in
	src/plugins/qmljseditor/qmljseditorfactory.cpp
	src/plugins/qmljstools/QmlJSTools.pluginspec.in
	src/plugins/qmlprofiler/QmlProfiler.pluginspec.in
	src/plugins/qmlprojectmanager/QmlProjectManager.pluginspec.in
	src/plugins/qnx/Qnx.pluginspec.in
	src/plugins/qtsupport/QtSupport.pluginspec.in
	src/plugins/remotelinux/RemoteLinux.pluginspec.in
	src/plugins/resourceeditor/ResourceEditor.pluginspec.in
	src/plugins/resourceeditor/resourcewizard.h
	src/plugins/subversion/Subversion.pluginspec.in
	src/plugins/tasklist/TaskList.pluginspec.in
	src/plugins/texteditor/TextEditor.pluginspec.in
	src/plugins/texteditor/basetexteditor_p.h
	src/plugins/texteditor/basetextmark.cpp
	src/plugins/texteditor/codeassist/basicproposalitemlistmodel.h
	src/plugins/texteditor/codeassist/defaultassistinterface.h
	src/plugins/texteditor/codeassist/iassistproposalitem.cpp
	src/plugins/texteditor/itexteditor.cpp
	src/plugins/texteditor/itexteditor.h
	src/plugins/texteditor/itextmark.cpp
	src/plugins/texteditor/plaintexteditor.cpp
	src/plugins/texteditor/plaintexteditor.h
	src/plugins/texteditor/texteditoractionhandler.cpp
	src/plugins/todo/Todo.pluginspec.in
	src/plugins/updateinfo/UpdateInfo.pluginspec.in
	src/plugins/valgrind/Valgrind.pluginspec.in
	src/plugins/vcsbase/VcsBase.pluginspec.in
	src/plugins/welcome/Welcome.pluginspec.in
	src/plugins/winrt/WinRt.pluginspec.in
	tests/auto/debugger/temporarydir.h

Change-Id: I254af8be8119fe9855287909e17d4b8ca9d2fc2f
2014-10-14 15:36:16 +02:00
hjk
27d3d5140f Debugger: Add QVarLengthArray dumper
Change-Id: I817ccd432a81ea0bf7432e6660a049fd41c926ec
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-10-13 21:36:50 +02:00
hjk
392b3f65d2 Debugger: Speed up reading of 0 terminated blobs in dumpers
Change-Id: Iebc64c21f4dd6f4876989e57d3a347b96e1bd449
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-10-13 09:22:23 +02:00
hjk
1baca8e797 Debugger: Add dumper for Qt3's (sic!) QString
Change-Id: I24d266587425a5c50ec3dcb548a29877730cbdff
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-10-10 13:25:02 +02:00
hjk
0691bf93b0 Debugger: Remove unused dumper code
Change-Id: Idc2d17e34bf5666c56d6f54b657867f1b0ecf943
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-10-10 11:37:28 +02:00
Eike Ziller
8295b503be License update
Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-10-09 11:41:44 +02:00
hjk
bf5f14a4e1 Debugger: Fix QHash display of "compact" keys
Add make std::string usable as "compact" key.

Change-Id: Idbfcf9d299e2dde392025166a20c3d0ab60239a6
(cherry picked from commit 2776536a7e)
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-09-26 09:35:36 +02:00
hjk
86918e9a28 Debugger: Add dumper for CPlusPlus::Symbol
Change-Id: I25404bff6b53e29fa13ee35787fb6c98209a408e
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-25 17:18:29 +02:00
hjk
4d12c017de Debugger: Wiggle LLDB startup
LLDB 320.* from XCode 601 was unhappy. This is an trial-and-error
to get it start up again.

Change-Id: I5dda0eef785d70abbb5798c3884ace89a8426969
(cherry picked from commit 1af0f77ea9)
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-09-23 10:41:19 +02:00
hjk
1af0f77ea9 Debugger: Wiggle LLDB startup
LLDB 320.* from XCode 601 was unhappy. This is an trial-and-error
to get it start up again.

Change-Id: I5dda0eef785d70abbb5798c3884ace89a8426969
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-09-22 18:07:16 +02:00
hjk
68106a7d31 Debugger: Show at least sizes for libc++'s std::map
Change-Id: I91f3ece335ef660e62e93dcbbeff18dc5b0c46f0
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-22 18:00:56 +02:00
hjk
245d4b253d Debugger: Fix warn() calls in LLDB bridge
Change-Id: I7e8a571daae6a81efb52e153c8b19e724aa56c55
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-22 18:00:44 +02:00
hjk
dbab3dc2e9 Debugger: Add a README to help with dumper command line use
Not exactly the intended use, and whence not part of the docs.

Change-Id: I622c3aef637700c895e37f79cc6ffac7b2cd5205
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-18 13:33:57 +02:00
hjk
1ee2759067 Debugger: Fix boost::unordered_set dumper
Change-Id: Ib356baed758437f5b549df060ca3ee62ee61b9fb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-15 12:12:13 +02:00
hjk
2776536a7e Debugger: Fix QHash display of "compact" keys
Add make std::string usable as "compact" key.

Change-Id: Idbfcf9d299e2dde392025166a20c3d0ab60239a6
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-09-12 15:36:01 +02:00
hjk
aba1d0a1cb Debugger: Use hard string limit for displayed strings
Currently 100000 to balance between usability (~14sec here)
and usability (e.g. size of typical source text files)

Change-Id: I8a54c81b104a87ec03babf85cbda2e6cea7d3f70
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-04 17:19:37 +02:00
hjk
0102455fd0 Debugger: Fix a few Creator related dumpers
Change-Id: I53d857119872200938c352dbceb8a327dee2a7eb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-09-01 23:36:44 +02:00
hjk
e3a1240f71 Debugger: Also display row/column in cooked QModelIndex display
Task-number: QTCREATORBUG-12926
Change-Id: I59f7ab45d9bf530d020945af6db608c4e83a66b7
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-08-29 13:22:44 +02:00
hjk
9d1bc2fdd3 Debugger: Add boost::unordered_set dumper
Change-Id: I42c39ccfe979023e2aa8957132a0ef3404f45aa8
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-08-29 00:43:01 +02:00
Christian Stenger
895421897e Dumper: Fix typo and exception handling
Change-Id: I4008d5427da7cedc0f57183a25519a1aef1fcb7a
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-24 16:55:12 +02:00
Joerg Bornemann
20b11960b5 Debugger: fix Qt namespace detection for gdb 7.4.1-debian
Change-Id: I379ff3dec051b22ffe313e6543020488550df97e
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-23 14:24:58 +02:00
hjk
776da7b5b3 Debugger: Improve associative std container display
Handle multimap and multiset. Use the "[index] key" display that's
also used for Q{Multi,}Map both for consistency and because it's
needed to distiguish otherwise identical keys.

Change-Id: Ib9e369206bce89e5e27d1f6f60ead11ca88e2dcb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-22 10:47:45 +02:00
hjk
b87867e905 Debugger: Make QString expandable
Change-Id: I7cbbe7ce4e82e3e30f54ffd4e731a136fdc15e6b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-14 16:14:17 +02:00
hjk
e8247c82c7 Debugger: Add dumpers for QXmlStreamStringRef and QXmlStreamAttribute
Useful for debugging debugger tooltips.

Change-Id: Ief1f98e0baa132c23d0886aae415a5f3da0294c3
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-11 10:22:31 +02:00
hjk
5dd261662b Debugger: Remove direct entering new watchers in the treeview
Instead pop up the "Add new expression dialog". Same amount of activity
needed, but more uniform in UI and code and hopefully less confusion
about the now-gone <Edit> marker.

Change-Id: I228801dc51f6d09ea9991b98399dc9ef04aa96c8
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-08 10:49:01 +02:00
hjk
bed82747f4 Debugger: Fix compact display of individual hash nodes
This was not accessible if the hash itself was a typedef.
Also, make sure that unusual key contents don't do any harm
in the protocol by hexencoding it unconditionally.

Change-Id: I83d43768ec72f797a72b2d9c44ca91b1feaf61a7
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-08 10:06:59 +02:00
hjk
77c7cac4b6 Debugger: Fix debugger startup on iOS
Task-number: QTCREATORBUG-12580
Change-Id: I8a2a38741719e8cf0b8a098eaa5d76eeb4bb1fb5
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-07-01 12:54:05 +02:00
hjk
b39363e747 Debugger: Remove dumper debugging output
Change-Id: I0dc23dd5d69885f8ddeb933ae644a983406bbb05
Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
2014-06-30 17:15:38 +02:00