Commit Graph

145 Commits

Author SHA1 Message Date
Eike Ziller
79fbb0db04 Merge remote-tracking branch 'origin/2.8' into HEAD
Conflicts:
	src/libs/cplusplus/FindUsages.cpp
	tests/auto/cplusplus/findusages/tst_findusages.cpp
	tests/auto/debugger/tst_dumpers.cpp

Change-Id: I20e2002c7b25cc25d8120922fa9b52e59db498e3
2013-07-09 11:04:59 +02:00
Erik Verbruggen
d70a33c0d0 C++: fix scope matching for templates in FindUsages
When the cursor is on the name of declaration of a templated function,
then since f93758b8e1 the scope returned
by Document::findScopeAt is the scope of the template declaration.
Before it was the parent scope of the template declaration.

The check in FindUsages::checkCandidates did not check all combinations
of template(-child symbol) scopes for the searched symbol and its
occurrences.

Task-number: QTCREATORBUG-9749

Change-Id: Idc84a2ba718721ce54683a67635a93352784ddd1
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-08 15:05:10 +02:00
Przemyslaw Gorszkowski
94dd4e740a C++: fix 'find usages' for templates
Fix find usages for template class(class name and template parameters)
or template function(template parameters).

Fixed:
* marking
* find usages
* follow symbol

Change-Id: I22fdbc11260cbd8ee9aafdd76aaeee0f4f49f9fd
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-06-17 11:04:47 +02:00
Przemyslaw Gorszkowski
d14767a6af C++: fix highlighting type when there is using Namespace::Class
If type is not found we try to find 'using' declaration for this type.

Task-number: QTCREATORBUG-7903

Change-Id: I569db9e1a8504a5da3115ebbed2e823d5924f6ca
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-05-02 15:17:27 +02:00
Oswald Buddenhagen
7923032022 fix include style relating to cplusplus libraries
... and adjust INCLUDEPATH accordingly.

while i'm at messing with include statements, also re-order the include
blocks according to policy and sort them within bigger blocks.

Change-Id: I7762abfd7c4ecf59432b99db2f424e4fa25733a5
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-04-03 13:40:39 +02:00
Erik Verbruggen
5f68b5b02f C++: split lines only once in find usages.
Change-Id: I16f91e81402ecff0039acf1dfc68d9ce7f6d1c81
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-02-26 15:24:07 +01:00
Oswald Buddenhagen
1fda2111d4 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp
	src/plugins/qmldesigner/designercore/include/widgetqueryview.h
	src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h
	src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp
	src/plugins/qnx/bardescriptormagicmatcher.h
	src/plugins/qt4projectmanager/profilekeywords.cpp
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h

Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
2013-01-31 16:25:33 +01:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
Przemyslaw Gorszkowski
23844410fd C++ editor: support nested class of enclosing template
Fixing:
* highlighting
* tooltips
* find usage
* selecting

Task-number: QTCREATORBUG-8245
Change-Id: I6e900799e43126706125b7e424567fca2b2c223e
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-22 11:35:25 +01:00
Nikolai Kosjar
9f38f7bfbc C++: Store lambda captures in the code model.
Done-with: Erik Verbruggen
Task-number: QTCREATORBUG-7968
Task-number: QTCREATORBUG-7949

Change-Id: I0cf727052d0a3536ed96ee894b18768c9538c213
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2012-11-07 13:36:20 +01:00
Erik Verbruggen
e72be772c5 C++: added some notes regarding QTCREATORBUG-7968
Change-Id: Ia7a0e4b416ba6ef768d76595d8576262a828ae78
Reviewed-by: David Schulz <david.schulz@digia.com>
2012-10-11 08:53:51 +02:00
Eike Ziller
6fd252b0a5 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.cpp
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.h
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessageloghandler.h
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/madde/maemodeployconfigurationwidget.h
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentinfo.h
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	src/plugins/remotelinux/remotelinuxdeploymentdatamodel.h
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/ichecklib_global.h
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h
	tests/manual/ssh/tunnel/tunnel.h

Change-Id: I04d7761df6bd936ad00e0547974284c967d39580
2012-10-05 21:20:50 +02:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Christian Kamm
aa645254a2 C++11: More (expression-list) or brace-init-list.
This time in the 'new' expression. Changed it to make
new C(1, abc...) and new C{1, abc}
work.

Change-Id: I7232798fd083b653ee04ef9ede386d6536133e16
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-19 12:23:18 +02:00
Christian Kamm
83da5f68be C++11: Allow for typename Foo<T>{}, Foo{} and int{}.
As a postfix expression.

Change-Id: I65cae0571080a9fb699af61c661328ef06f97890
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-19 12:21:31 +02:00
Christian Kamm
9bd86e7d68 C++11: Allow brace-init-list in range-for statement.
Also drop the unused 'initializer' member from
RangeBasedForStatementAST.

Change-Id: I078ebbc85cafa643af4bfe62d698bf7de71360e4
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-19 11:54:50 +02:00
Christian Kamm
b9f6f1bcf7 C++11: Allow uniform initialization in ctor init lists.
So
class C { C() : _x{12}, _y({12}) {} };
now parses correctly.

Change-Id: I4281dcb0541a86b550e74630cad6ae0a59fef1b4
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-19 11:47:49 +02:00
Christian Kamm
23a11e2ddb C++: Rename NewPlacementAST to ExpressionListParenAST.
It'll be reused as the initializer expression for declarators
that are followed by "( expression-list )".

Change-Id: I6c76a76641941874ef1ed21daa7b6e057c6d170f
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-17 14:53:20 +02:00
Leandro Melo
903c3cafe8 C++: Improve lookup - collect more valid items
There was a fix for QTCREATORBUG-7730 in the case of nested
forward declarations in commit 74a458bca0.
However, it introduced regressions and actually didn't solve
the issue, since the behavior was hidden by another error fixed later.

The patch should properly fix the issue and the regression pointed
in QTCREATORBUG-7777.

Task-number: QTCREATORBUG-7730
Task-number: QTCREATORBUG-7777
Change-Id: I27397fefdc7cc9a60111761df1f76a01407886f7
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2012-09-04 10:09:16 +02:00
Leandro Melo
a1b6a4749e C++: Fix finding of destructor in outlined definitions
Task-number: QTCREATORBUG-7323

Change-Id: I92a42a30d156de2d8006f1df8da86d808a1a518d
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2012-08-08 16:01:57 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Erik Verbruggen
368d5926ca C++: handle destructor names with template parameters.
Change-Id: I74b4fd5e043db935abc18345b303d294b71e8fc2
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2012-02-23 08:39:34 +01:00
Flex Ferrum
da2aa0df72 C++: Add support for C++11 range-based 'for' loops
Change-Id: I7eef048a7952a79f031ae3d0abba68e3c5ffbfb8
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-21 15:27:00 +01:00
Erik Verbruggen
3f5dc36a53 C++11: first set of changes for decltype.
Change-Id: I49d6ff7eb1805cd07bdfcb27bb37d4c6cadc9115
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-10 16:29:04 +01:00
Erik Verbruggen
1d3dc30153 C++11: add support for static_assert.
Change-Id: I82d8d60acaa9265fd25e0a3734855b19bdef9c06
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-02 13:49:22 +01:00
Erik Verbruggen
dd4299073e C++11: handle noexcept specifications.
Change-Id: I7da3affea2758b2e01124105e2521e1f2c5f6678
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-02 12:22:20 +01:00
David Schulz
e44254bb9f Find usage displays content of the first line
Task-number: QTCREATERBUG-6176

Change-Id: I1c45b951bfde0b0d33bf462f532da7cbdbaa3fe7
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2012-01-30 16:08:42 +01:00
hjk
2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
Leandro Melo
c287d90604 C++: Rename source/setSource to utf8Source/setUtf8Source
Continuinng a previous commit... This is in order to make
the interface clearer.

Change-Id: Ic1b05217f878578bc84a064927507b75981c47d6
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-01-13 11:22:28 +01:00
Leandro Melo
fd179ed951 C++: Accept UTF-8 byte arrays in type of expression
The model uses UTF-8 internally and it makes more sense to only
convert when necessary.

A following commit will rename the source/setSource methods in
document for more clarity too.

Change-Id: I960ea0754efabd1436ad4b4299a57faeb65a8bee
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-01-13 10:17:03 +01:00
Leandro Melo
057fad645b C++: Recognize C++11 nullptr
Change-Id: I5b7ac8f9b2137ffe9439ada4ec4aeb9cee8e249d
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-11-18 13:50:19 +01:00
hjk
31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
Leandro Melo
83e4a7260d C++ editor: Remove unnecessary line split in find usages
Avoid extra allocations since we only the actual line for the case.

Change-Id: I0d0f0db394d9075bbdce24d1d5b5efa55c52f9b3
Reviewed-on: http://codereview.qt.nokia.com/261
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2011-05-31 12:08:17 +02:00
Tobias Hunger
aa2acec14c Fix/add copyright headers
Change-Id: I8b73d583be1ee7183f4074bce49d5390e38631a2
2011-05-06 15:17:05 +02:00
hjk
8397663964 Update license. 2011-04-13 11:49:28 +02:00
Erik Verbruggen
483875f2be Fixed an off-by-one array-out-of-bounds bug.
Reviewed-by: Lasse Holmstedt
2011-04-11 09:56:26 +02:00
Erik Verbruggen
2062747158 Fixed out-of-bounds when originalSource was not explicitly supplied.
Task-number: QTCREATORBUG-3613
2011-01-27 14:51:01 +01:00
Erik Verbruggen
dea74862d3 Fixed the line retreival for find-usages.
Instead of using the pre-processed source, the original one is used.
This makes a difference when a macro is used in the line, where the pre-
processed source would have a "#gen true" token.

Task-number: QTCREATORBUG-3345
2011-01-17 14:47:20 +01:00
Erik Verbruggen
daafa533d6 Fix find-usages in template classes.
The problem was that the scope of the class declaration in a template-class
declaration is the template, not the scope in which that template is defined.
The scope-check was not taking this into account.

Task-number: QTCREATORBUG-3183
Reviewed-by: Roberto Raggi
2011-01-17 13:42:45 +01:00
con
d1023c7614 It's 2011 now.
Reviewed-by: hjk
2011-01-12 09:46:24 +01:00
con
04e32b0049 License headers. 2010-12-17 16:03:42 +01:00
Christian Kamm
7c2d3659e7 C++: Fix an infinite loop in reportResult.
Done-with: Roberto Raggi
2010-09-02 15:24:44 +02:00
Roberto Raggi
c12866a467 Merge CPlusPlus::NameId and CPlusPlus::Identifier. 2010-09-02 12:51:01 +02:00
Roberto Raggi
05f2fd6669 Renamed Symbol::scope() to Symbol::enclosingScope(). 2010-08-26 16:16:22 +02:00
Roberto Raggi
688d382ad9 Some cleanup in the C++ AST. 2010-08-26 16:07:14 +02:00
Roberto Raggi
c5d48034bb Compare the scope pointers for local scopes. 2010-08-26 13:38:07 +02:00
Roberto Raggi
9b1a92426e Compare the instances when searching for the usages of a template parameter. 2010-08-12 12:51:54 +02:00
Roberto Raggi
8a32c41f6f Removed TemplateArgumentList 2010-08-11 15:25:20 +02:00
Roberto Raggi
f3746289b9 Push the template-prototype scope. 2010-08-11 15:25:20 +02:00
Roberto Raggi
41b4af0501 Get rid of the prefix findOrInsert for the functions in CPlusPlus::Control. 2010-08-11 15:25:19 +02:00