Commit Graph

4883 Commits

Author SHA1 Message Date
Nikolai Kosjar
1fe1c6d0b4 C++: Tests: Remove plain-cplusplus
Change-Id: Ifdf4cd5ea478c87d585c9404caf8f4be6873f692
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2014-07-28 12:14:43 +02:00
Nikolai Kosjar
6a9ae7e25f CppTools: Auto-include pre-compiled headers
So far the pre-compiled headers were processed (thus defines from those
headers were visible), but the actual includes for the documents were
not added, which is necessary for lookup/completion.

Note that this will be only done if pre-compiled headers are not ignored
(Options > C++ > Code Model > [] Ignore pre-compiled headers).

Change-Id: I54a8e6b00597af164d958e3e9f2a1075ea187788
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-24 12:25:02 +02:00
Nikolai Kosjar
d3c5fff66d C++: Fix expensive parsing of expressions
For expression statements like "(g(g(g(...(g(0))...))))" we reparsed
quite much again and again for nothing. The high-level trace for this
expression looks like this:

    parseCastExpression
      parseTypeId
        parseAbstractDeclarator
          parseAbstractCoreDeclarator
          parseParameterDeclarationClause (--> DEEP)
            ...

      parseUnaryExpression
        ...
        parseCorePostfixExpression
          parseTypeId (--> DEEP)
          parsePrimaryExpression (--> DEEP)

Especially parseTypeId is expensive in this case and it's called two
times, both from the same token (index).

With this patch, we remember for certain ASTs the parse results and
re-use them when needed.

Change-Id: I013d1c064c655636bc94db408097863b5e183fc2
Task-number: QTCREATORBUG-12252
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-24 12:06:50 +02:00
Nikolai Kosjar
1926493fe9 C++: Tests: Run ASTVisitor on parsed document
...as a sanity check.

Change-Id: I391276e41c5180d0df72fa6267f58801bf2d5da3
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-24 12:06:36 +02:00
Erik Verbruggen
3a242495fe ObjC++: also index ObjC symbols.
@classes, @protocols, @properties and -methods (and +methods) will now
show up in the locator.

Change-Id: I33f904c456c321fc80b8aba7ff52d5f1207c58be
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-07-24 11:38:54 +02:00
Erik Verbruggen
45b1169d06 C++: Support alignas in C++11 mode.
Change-Id: Ifa81a481bf92b5b71495a105ae292f3e9895f704
Task-number: QTCREATORBUG-9279
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-07-22 16:43:51 +02:00
Eike Ziller
0374a9782e Merge remote-tracking branch 'origin/3.2' into HEAD
Change-Id: I257bb9310bb3bde493aff4cd43091ec63fcb5203
2014-07-22 16:11:40 +02:00
Erik Verbruggen
5d45e0b69a C++: block recursion when parsing subsequent case statements.
A case or a default statement must be followed by another statement.
When a such a case (or default) statement is followed immediately by
another case (or default) statement, then this would create a linked
list, and the parser will recurse to parse such input.

In order to prevent the parser running out of stack space while
recursing, parse this corner case by blocking parsing a labeled
statement as the first statement after a labeled statement.

The advantage is that these statements do not form a linked list, so any
subsequent visitation of the AST won't run out of stack space either.

Change-Id: Id2111a49509132997f5fbe4bb12c92c729ec2522
Task-number: QTCREATORBUG-12673
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-07-22 15:45:02 +02:00
Robert Loehning
95d22fc972 Squish: Revive testing of Welcome mode
This partly reverts commit a1274c93c8.

Change-Id: I1ba8586ae51a42a2239ee4ae5c8ead2ac880ecfa
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-22 15:03:27 +02:00
Christian Stenger
469fe52af7 Squish: Provide test for QmlJSConsole
Change-Id: Ib7cbf312b611176dbb762958bca687e043372a27
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-22 13:11:42 +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
Christian Stenger
f5474a35e5 Squish: Fix detection of expected debuggers on Linux and Mac
Change-Id: Ie3f1c291e9ba4646fb948bf30d38d8db9af31886
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-22 08:02:26 +02:00
Robert Loehning
7f6673eae7 Squish: Update tst_git_clone
Task-number: QTCREATORBUG-12651
Change-Id: Ie9d9f8dfe50fd2751b77690ea1464f0ba91ee2fe
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-18 14:18:59 +02:00
Eike Ziller
c571ecbd51 Merge remote-tracking branch 'origin/3.2'
Conflicts:
	src/plugins/git/changeselectiondialog.cpp
	src/plugins/git/changeselectiondialog.h
	src/plugins/git/gerrit/gerritplugin.cpp
	src/plugins/git/gitclient.cpp
	src/plugins/git/gitclient.h
	src/plugins/git/gitsettings.cpp
	src/plugins/git/gitsettings.h
	src/plugins/git/mergetool.cpp

Change-Id: Icd1b2741da96395ed1b41903f453049a303e4791
2014-07-18 14:04:51 +02:00
Robert Loehning
d07ee6a3d1 Squish: Update tst_session_handling
Change-Id: I93fe52e59579958c85ecbe086f62ec067af214f7
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-18 14:02:42 +02:00
Orgad Shaneh
9f5949e6f2 Fix MSVC compilation
Change-Id: Ibeaa05a40dd75edeafe0cd23923a52da7c874cd2
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2014-07-17 14:56:46 +02:00
Christian Kandeler
01addecb8d qbs build: Get rid of CopyTransformer.
That item was using a directory as an output artifact, which was only
working by accident and often caused warning messages about failure to
remove files.
Use a proper module instead, which is the nicer solution anyway.

Change-Id: Ib75a0ce26a24c78eb5421367995a8fc72f6a3c2a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-07-17 13:08:30 +02:00
Eike Ziller
e7ea94b688 Merge remote-tracking branch 'origin/3.2'
Conflicts:
	src/plugins/git/gerrit/gerritparameters.cpp
	src/plugins/git/gerrit/gerritplugin.h
	src/plugins/git/gitclient.cpp

Change-Id: Ie7719cfe45489b72d64260e729dcce3760f33bec
2014-07-17 12:42:04 +02:00
Christian Kandeler
cbeb77030f Autotests: Fix qbs build.
The semantic change in product.buildDirectory broke some autotests.

Change-Id: Ic9336f1e9341adacd1daa763b7ba729d7973fe58
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-07-16 14:02:19 +02:00
Andre Hartmann
69ed9f561b ANSI: More tests.
Change-Id: Ie042a8ad4dc261b026f2e4d0e7780257bcb75641
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-15 22:26:02 +02:00
Christian Stenger
e84fbe4807 Tests: Fix linking on Win
Change-Id: Idf5b669d48733754d943d95e9250a0c59d71c863
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-14 17:40:25 +02:00
Eike Ziller
04fdbb0e21 Merge remote-tracking branch 'origin/3.2'
Change-Id: Ifa095e8503bc9bf47389d34251301cae67a944f8
2014-07-11 16:08:27 +02:00
Christian Stenger
eff566b3b2 Squish: Make sure the project has been opened
Change-Id: I14119e1bc9498cc0fd722f5842f4275b644911fb
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-10 15:55:27 +02:00
Christian Stenger
194f22c577 Squish: Add temporary workaround
Without this workaround the build machines are messed up with lots of
exception handler windows.

Task-number: QTCREATORBUG-12644
Change-Id: I2075e85559314813b272cc6dbe7f068954b8c9dd
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-10 15:54:56 +02:00
Christian Stenger
be61ea48bf Squish: Fix expected label
Change-Id: Id276a10dfcc1ca095acee74201104e6d1c6960f3
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2014-07-10 15:54:47 +02:00
Nikolai Kosjar
33a80e56cc C++: Fix return type of lambda
Relying on "_type" for the lambda was wrong.

In case of the bug report the return type of the lambda happened to be
the template class. Because of that Clone never stopped cloning.

Change-Id: I377d12e6a8278198abd1488fbdbc89b4157c1357
Task-number: QTCREATORBUG-12631
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-10 12:12:46 +02:00
Steve Mokris
e5ae8f0062 ANSI: Add 256-color escape sequences support
Task-number: QTCREATORBUG-12623
Change-Id: If2f3168a77b366aae570b48f5070e85087fe76a6
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2014-07-08 15:21:39 +02:00
Eike Ziller
0016e385ab Merge remote-tracking branch 'gerrit/3.2'
Change-Id: I2567b8f19e502777f6566ce573a6970fb62a7521
2014-07-07 17:57:39 +02:00
Erik Verbruggen
922c330bcc GenericProject: add simple test.
Change-Id: Idce9c44caf0b963fa9750b8abc7fc8aab6ab8227
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-07-07 10:56:21 +02:00
Eike Ziller
62aea4728f Merge remote-tracking branch 'origin/3.2'
Change-Id: I05f76a4f5134c4edd91a79b757bcce9d6e7c258b
2014-07-07 09:19:03 +02:00
Orgad Shaneh
def9695e42 Fix Qt4 compilation
Change-Id: I59f5e4ceec008adedb6f548502c7c90854c033ab
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2014-07-06 07:21:48 +02:00
Nikolai Kosjar
04d655dee0 C++: Fix preprocessor line offsets
In TranslationUnit, the "normal" lines are based on utf16char offsets,
but the preprocessor lines were based on byte/latin1 offsets.

The preprocessor lines are now based on utf16char offsets, too.

Task-number: QTCREATORBUG-7356
Change-Id: I3c41d1dcee8e9e487210f36da806b0229d3f4cd0
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-04 14:03:44 +02:00
Nikolai Kosjar
06e2c3309e C++: Fix "duplicate data type in declaration" for lambdas
The "_type" wasn't reset.

Task-number: QTCREATORBUG-12521
Change-Id: I0d38cb38e270260065313d1235d42f2689385850
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-07-04 12:29:28 +02:00
Eike Ziller
ac31d3c67e PluginManager: Remove hardcoded list of plugins that cannot be disabled
Instead add an optional attribute "required" to the plugin spec. Since
the locator plugin and find plugin are gone, and I don't see a reason to
prevent disabling the text editor plugin, only Core plugin gets the new
attribute set.

Change-Id: I7a380026ea46173cf00afff4213ca1b3a2578434
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-07-04 08:51:39 +02:00
Christian Stenger
881632c390 Squish: Fix expected values in tst_simple_analyze
"Source code not available" is shown again - now they're displayed
from the view instead of being added explicitly to the model.
See ccf871aa20.

Change-Id: I8c370008005c9453cc86dacb410b310b972e03eb
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-03 10:02:54 +02:00
Christian Stenger
776e6adda7 Squish: Remove platform limitation of snooze() call
This AUT crash now happens frequently on Linux as well.

Change-Id: Iee44cc4f5ca45afc9e643a2745cabfbf3e6efcf4
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-03 07:56:04 +02:00
Christian Stenger
e39b623c28 Squish: Fix tst_create_proj_wizard
Change-Id: Ia34a9055aac52479a331f3c85557291b1c586221
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-02 13:43:39 +02:00
Christian Stenger
c40dc7674d Squish: Raise timeout to avoid LookupError
Change-Id: Ia1718e67682623a6323411a8ad7e9240eb328bfb
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-02 12:53:54 +02:00
Christian Stenger
ea81527773 Squish: Add workaround to test_QMLS03
Task-number: QTCREATORBUG-11984
Change-Id: I4be9d605ee1f95f463fd0a16cb9b379949751203
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-01 10:46:39 +02:00
Christian Stenger
75da297e4d Squish: Disable pastebin.ca for now
Pastebin.ca has issues which make this test unreliable.

Change-Id: Idae581822d9c2555e57fd91f5b1ae044666cdc4c
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-07-01 10:45:14 +02:00
Eike Ziller
142f48e340 Merge remote-tracking branch 'origin/3.2' 2014-06-30 12:03:41 +02:00
Christian Stenger
cf211e46cf Squish: Fix expected object
Change-Id: I49eef9de0c635cd6618d05e0618ce6b0fe8d352e
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-30 11:05:53 +02:00
Christian Stenger
93b53a4bb3 Squish: Add expected paths for 64bit debuggers on Win
Change-Id: Id3f80097c38d6578ef647bb2d31aedad0f2a56dc
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-06-30 09:05:56 +02:00
Robert Loehning
1d8c2e61b4 Squish: Update getQtInformationForBuildSettings()
Change-Id: I54df50a31bd1bc937668870e86666156ecddb6ce
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-27 13:27:47 +02:00
Robert Loehning
b415cc3cac Squish: Update expected values of tst_simple_analyze
Change-Id: I8b11ebe20cfa432a37858c582a1a36b9bd718ce2
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-27 12:17:17 +02:00
Robert Loehning
bafe7dbb0b Sqish: Update tst_git_clone
Change-Id: I0d51540b7202e0968a44d87865672ca7a6cfa91d
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-26 16:40:07 +02:00
Robert Loehning
922f25170c Squish: Update editor tests
Change-Id: Idcc7de48f30438b2d26512999fe8c7a785d0f3dd
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-26 15:30:13 +02:00
hjk
a253feee77 Debugger: Fix display of wchar_t[]
Task-number: QTCREATORBUG-12492
Change-Id: I5668c0727a36a1529d28b36d0361922f7acb3083
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-06-26 14:31:47 +02:00
Nikita Baryshnikov
73ef6d1083 Fix tests build
Change-Id: Ia3b9c3e30b7d5e62413d1f8c477e5a68b9c90e50
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-26 13:04:52 +02:00
Erik Verbruggen
a7b882315d Mark unused fields with Q_UNUSED.
.. to suppress -Wunused-private-field warnings.

Change-Id: I9eaea1b45bbe4fda4714831af1926c14b31cb9fe
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-25 15:59:09 +02:00