Commit Graph

1037 Commits

Author SHA1 Message Date
Tobias Hunger
07d486ce94 PluginManager: Do not use instance() when that is not needed
Change-Id: I68e1b20561098c375557be6db1fb528e0ae040f6
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-02 11:52:40 +02:00
Erik Verbruggen
23085895d6 C++: handle @try statements in the parser.
No semantic analysis yet, but this prevents the parser from generating
bogus diagnostics.

Task-number: QTCREATORBUG-9309
Change-Id: I2ec575a8474cd51bfa97b17678d3da71ab8dcd7a
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-19 14:49:38 +02:00
Orgad Shaneh
ad9e7ccab6 Fix coding style for else statements
Change-Id: I1309db70e98d678e150388c76ce665e988fdf081
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-17 11:11:25 +02:00
Erik Verbruggen
8828a2fa38 C++: add test for TranslationUnit::getPosition bug
This test is marked as failing, because the bug is still there. To be
fixed when we re-use the generated token stream of the preprocessor as
input for the parser.

Task-number: QTCREATORBUG-9799
Change-Id: I454a9939aa188a6ff934a11699232f39c828bc7b
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-15 11:07:51 +02:00
hjk
abb4ff95d7 Debugger: Fix linking debugger auto test
Change-Id: I6ddbe261aca7064176cc025da752476915c5d906
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-12 15:04:15 +02:00
Erik Verbruggen
fa1647d880 C++: add utility method to dump usages.
Change-Id: Icff6e9310a45e66b573fb2a6623a10e025c43539
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-11 14:09:03 +02:00
Erik Verbruggen
3563b4167f C++: Fix test failure after merging 2.8.
Change-Id: Iac4156b872fe81c1714857c24363bf171e7d61cd
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-11 13:58:16 +02:00
Eike Ziller
ab0c3da08f Merge remote-tracking branch 'origin/2.8'
Conflicts:
	qtcreator.pri
	qtcreator.qbs
	src/plugins/projectexplorer/projectexplorer.cpp

Change-Id: I37e550646f877b50693043894976a693ac22ad5e
2013-07-11 08:02:41 +02:00
hjk
84cbd1017a Debugger: Remove QByteArrayData dumper test also in master branch
Turned out to be not as useful as originally thought.

Change-Id: If8487357a718b75fc1168b1c79d393775bdd1702
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-10 09:15:59 +02:00
hjk
4352aba86a Debugger: Make autotest work with LLDB 179.5
Change-Id: I9834330633e5568b7c94059d4286c93adfecb1a2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-09 17:29:13 +02:00
hjk
997aa2e076 Debugger: Fix display of default-initialized QStringRef
Change-Id: I3986541bb23bb7647f2a36798577a1e489fdc90b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-09 11:43:39 +02:00
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
hjk
79c8a8fbb0 Debugger: Fix libc++ std::{unique,shared}_ptr dumpers
Change-Id: I9efb22543bf31f43381e57fb0acf4aeb15e8a293
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-09 10:20:34 +02:00
hjk
a6cae022ac Debugger: Split <complex.h> auto test into GDB/LLDB specific
Results are different, but ok.

Change-Id: I5550dd4b43bdc12fac329d33e158fa759bee4d28
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-09 10:20:02 +02:00
hjk
a307d88667 Debugger: Add facility to check float values in auto tests
Change-Id: Iee50dd4b43bdc12fac329d33e158fa759bee4d28
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-09 10:13:48 +02:00
hjk
af17f33a75 Debugger: Improve hash "unsalting" in auto tests
Do it in code. Relying on the environment variable breaks in
too many cases (remote; unmodified project; ...) to be useful.

Change-Id: I67577fef22942d75d32d356f38c4ff0c752fe157
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-08 16:24:10 +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
Eike Ziller
a98fe15fe5 Merge remote-tracking branch 'origin/2.8' into HEAD
Conflicts:
	qbs/pluginspec/pluginspec.qbs

Change-Id: Ic8e992623b9eda8913ee473c779a8df27643ccc9
2013-07-08 15:01:17 +02:00
hjk
0b57c8ded2 Debugger: Fix LLDB display of std::array with "complex" content
Change-Id: I43dd9b8afe76f204fe2509f1f2f81f74c48a16ab
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-08 13:15:20 +02:00
hjk
d2469bc9e8 CppRewriter: Treat libc++'s std::__1:: as std:: for debugger display
Change-Id: Iabc1330633e5568b7c94059d4286c93adfecb1a2
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-07-08 11:07:42 +02:00
hjk
16ed4c018a Debugger: Fix QSet dumper
Change-Id: I62f5eb1e9b9047b86aeeb79bfd104079897a021c
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-05 09:05:17 +02:00
hjk
0159774451 Debugger: Improve QVariant dumper
Access to the is_shared flag seems somewhat indeterministic
across platforms/compilers. Hard-code to non-shared for now.

Change-Id: Iaac9dd8fcee28ffd1e599300a1c12f3215823573
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 13:24:32 +02:00
Robert Loehning
80b0156918 Remove unreachable link
Change-Id: Id14add2f8669c97d8608a7ed8455e63e50d3bcbe
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2013-07-04 13:08:30 +02:00
hjk
ccf0abf781 Debugger: Fix Q{Size,Rect,Point}F dumpers
They were only showing the integral parts in the
summary line. Duh...

Change-Id: I5efd7a9d5b7bfd6ffd68dcda824c95dd7a7a52b0
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 10:31:41 +02:00
hjk
0ebe100da9 Debugger: De-const, part 2.
Change-Id: Iabfb8980c18790d2f81d6991fdf91fb164a39329
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 09:22:44 +02:00
hjk
a197d7a0b9 Debugger: Ignore differences in 'const'-ness in type column
It's generally not too useful to see it at all, and in cases of
'const int' vs 'int const' it just defeats the test's purpose.

Change-Id: I3439dd8fcee28ffd1e599300a1c12f3215823573
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 09:09:46 +02:00
hjk
a036f7f1e4 Debugger: Fix more LLDB dumpers
Simple QVariants, references, const pointers, QObject names,
QList<Foo*>, ...

Change-Id: Iaa3fb9e4db1c249817e59239029db7dd220ba5b3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-03 17:07:20 +02:00
Eike Ziller
8685ff8a28 Merge remote-tracking branch 'origin/2.8' into HEAD
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: I5d2018d3437b99bcdffa92bf1a212f42923c4fad
2013-07-03 16:55:27 +02:00
hjk
db4ce016bc Debugger: Fix a few LLDB dumpers
Change-Id: Ibdf3ff3f03cfc91df44168243972b1e5a0ee5077
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-03 13:30:13 +02:00
hjk
964d1212da Debugger: Make more dumper work without debug info
QRegExp, QHostInfo, QDir, QTextCursor

Change-Id: I2a368f8d294a235076491e4c50fc79039a2c9cff
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-02 15:30:07 +02:00
Erik Verbruggen
a8a49c9851 CDB: fix breakpoint location in catch clauses.
Task-number: QTCREATORBUG-7336

Change-Id: I926e82499325e4fe38e25cc7a6158050f7fc0e82
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-07-02 11:40:23 +02:00
hjk
ec0fb652c5 Debugger: Make more dumper work without debuginfo
Change-Id: I2ff23b81dc27be1052c36cffb7ad16dbea6fa339
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-02 09:32:17 +02:00
Christian Stenger
6f5ac8ce76 Tests: Compile fix
Change-Id: I3363d46218feaa9f9196ede9c16f7b90c4fd320a
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-02 09:26:19 +02:00
hjk
0292600c72 Debugger: Work on dumper without debug info
Change-Id: Iae5f60fe43c28f4cf0254b87530002145dc67e27
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-01 14:21:05 +02:00
hjk
d238959a2b Debugger: Add auto test for QByteArray::Data dumper
Change-Id: I2be3fe953f497768c564e393e3f2b23b47a1fa1d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-01 14:20:28 +02:00
Eike Ziller
c9128b7fdd Merge remote-tracking branch 'origin/2.8'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: I1aa7506519e0f461f33921ca20ce1b51adb5783f
2013-06-27 14:24:57 +02:00
Eike Ziller
e8469a2bab Merge remote-tracking branch 'origin/2.8'
Conflicts:
	src/plugins/fakevim/fakevimhandler.cpp

Change-Id: I8101f18b87859924644471817d4f1408790d5628
2013-06-25 10:14:14 +02:00
Eike Ziller
4680099aa1 Fix searching for repeated characters in files.
Searching for aaaa in aaaaaaaa would give 5 results instead of 2 in case
of non-regexp search.

Task-number: QTCREATORBUG-7883
Change-Id: I5936090b3eef5e68405201fe63d02bf0dd2469d5
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-06-25 10:03:42 +02:00
hjk
2b64cdcde9 Debugger: Fix display of some boost types with LLDB
Change-Id: Ied11317f8389963e5c98230d6885311a84c2dc25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-21 13:24:55 +02:00
hjk
529c8a69b0 Debugger: Fix recent dumper autotest regression
Change-Id: Iefddda1e5781f10eb63095e2e513893bb9a3ebf6
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 12:51:37 +02:00
hjk
209bad4213 Debugger: Fix reading of \x escape sequences in strings
Change-Id: Idfe41f6c2769397d6eee3ab74de4afbb94111e25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 12:21:47 +02:00
Christian Stenger
440725322a Tests: Allow execution from outside pluginmanager folder
Change-Id: If8d564b9fe125669aa179f2b21de8ffac16cd076
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-06-20 11:21:00 +02:00
hjk
43e810759d Debugger: Re-enable a few dumper auto tests
Change-Id: I11fc41faebcd27d0d4a6ac5d06f0ce0fa3af8f29
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-18 16:47:46 +02:00
Przemyslaw Gorszkowski
68d6a762d9 C++: add support for local types
This change addes support for class, enum definition inside blocks({}) or
functions, e.g.:
void f()
{
	struct S
	{
		int bar;
	};
	S s;
	s.bar;
}

It fixes:
* code completion
* highlighting
* follow symbol
* marking
* find usages

It fixes also problem with namespace aliases inside blocks or functions.

This change can have also impact on performance(there are additional processing)

Task-number: QTCREATORBUG-166 (namespace aliases inside function/block)
Task-number: QTCREATORBUG-3620
Task-number: QTCREATORBUG-6013
Task-number: QTCREATORBUG-8020
Change-Id: Iaea6c6dfe276f1d7b2279b50bdd2e68e375d31eb
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-06-18 10:09:51 +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
Nikolai Kosjar
8180f695f1 CppEditor: Check <include path>/QSomething
For the quick fix AddIncludeForUndefinedIdentifier, if no class is found
via the locator, check the "Qt include paths" for a header file with the
same name as the class name.

Task-number: QTCREATORBUG-9538
Change-Id: I13c86844c2ff653fa479dc91eb109af2a6d76fae
Reviewed-by: Lorenz Haas <lykurg@gmail.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-17 08:16:43 +02:00
Erik Verbruggen
271c3f45a4 C++: Fix preprocessor blocked macro bug.
By lexing the first token after a macro call (meaning: the token after
the closing parenthesis (which was passed to handleFunctionLikeMacro
which in turn pushed it back into the token buffer)), a token buffer
might be popped, which unblocks the macro that generated the actual
param pack. The effect was that if this happens in the expansion of a
recursive macro (with parameters!), the preprocessor ended up in an
infinite loop.

Task-number: QTCREATORBUG-9015
Task-number: QTCREATORBUG-9447

Change-Id: I0d83c59188ec15c4a948970e9fa944a17d765475
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-06-11 16:57:07 +02:00
Nikolai Kosjar
f3186690bd CppEditor: Improve finding position for new includes
...by detecting include groups (separated by new lines, include types
and same dir prefix).

Task-number: QTCREATORBUG-9317
Change-Id: I73e80fdc715104901cb2d4f5b15b4cab5d04d305
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-06-11 15:57:10 +02:00
Peter Kümmel
84dd8dd669 gdb version string: ignore (...) content when using rubenvb's build
The often used rubenvb mingw-w64 build reports a GDB version string with
the GCC version in parentheses:
  GNU gdb (rubenvb-4.7.2-release) 7.5.50.20120920-cvs
With his patch the content within the parentheses is ignored, and is not
wrongly interpreted as GDB version.

Change-Id: I1a3c54acc81cb6d649d11ebf38dea96fc2685aa1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-07 13:48:21 +02:00
hjk
49687f7167 Debugger: Fix wrong input in QByteArray dumper test
Change-Id: I9cb717a1e92b96c12e3bd7876ad40e952c7a2c20
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-07 09:15:40 +02:00