1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-16 05:25:21 +02:00
Commit graph

1568 commits

Author SHA1 Message Date
Nathan Ridge
df727d536f Bug 529958 - Semantic highlighting of variable passed by non-const reference in a dependent call
Change-Id: I421bf98cbeff052c39716f1381e9f8930626318b
2018-02-02 23:30:58 -05:00
Davin McCall
a293032938 Bugs 529299 and 491296. Fix indentation after 'noexcept'/'override'.
Change-Id: I3129e5f9fced4a27020f6ca27238bf5faf4df889
Signed-off-by: Davin McCall <davmac@davmac.org>
2018-01-10 00:08:49 -05:00
Nathan Ridge
1bf0dff19f Bug 526857 - Diagnose member access into pointer type in C code
Change-Id: Ib6fc6be443d59facacde3c290e0f974e5cbe6f1b
2017-11-14 19:47:39 -05:00
Nathan Ridge
301de3d40e Bug 522010 - Completion of non-type template parameter in ambiguous template argument
This works around the fact that the optimization introduced in bug 316704
inteferes with the mechanism for offering completions for both alternatives
in an ambiguous context.

Change-Id: Ibe14c1b4f2f9c9b3394d4635c87424a25fbd7a53
2017-11-13 13:22:26 -05:00
Michael Woski
4b3aea7e2a bug 525794 - NPE when invoking Open Declaration in "empty space"
Change-Id: I09a8670d113553c9046d829526149f869f4029a4
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-10-11 16:51:33 -04:00
Michael Woski
a7be934ba2 bug 525288 - resolve partial template specializations in
CSourceHover/OpenDeclaration

Change-Id: I61c06fc453499ddc2b1af73a8a69d4b648d473c3
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-10-05 17:58:21 -04:00
Nathan Ridge
c7e475e50e Bug 524338 - Make sure SemanticHighlightingTest.teardown() is called even if an exception was thrown during the test run
Change-Id: Idd19728c2e920d1bb8a590863c40d8646f916e1a
2017-10-03 22:25:02 -04:00
Nathan Ridge
20a88df65c Bug 399147 - Make 'Find References' find using-declarations
This is a revised approach for fixing this bug by giving using-
declarations implicit names for each delegate binding.

Change-Id: Ib9695c30258b8cb322ae1548ab022e357318135c
2017-10-02 02:44:02 -04:00
Nathan Ridge
e7c64e785b Bug 515417 - Improve handling of friend classes in PDOM
According to the standard, if a friend declaration is the only
declaration of a class type, then that class type is only
visible to argument-dependent lookup until another declaration
is encountered.

Bug 508338 attempted to implement this rule for PDOM class
types by not storing the class type in the index at all when
that first declaration is encountered. However, this meant
not recording the friend relationship either, which regressed
CompletionTests.testTypes_FriendClass (which was then disabled).

Bug 512932 implemented this rule for AST class types in a
different way, by keeping track of which names are visible to
ADL only.

This change reverts the fix for bug 508338, and extends the
approach from bug 512932 to PDOM class types. It also re-
enabled CompletionTests.testTypes_FriendClass which now passes.

Change-Id: I9a845fdba514339d86c0c3761a85cf34a17a5613
2017-10-02 01:59:31 -04:00
Michael Woski
709689b36e Bug 521016 - resolution error for nested alias template specialization
from
index


Change-Id: Ia36f096cc4765341a62d8c6139a487c714854e97
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-09-19 19:29:35 +02:00
Michael Woski
4e7354e1b0 Bug 456224 - CPPDeferredClassInstance not bound to partial template
specialization

Change-Id: I91482bf3f27becaea796a2c20875f97d92157644
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-09-16 09:08:21 +02:00
Michael Woski
c5b4657220 bug 521820 - don't filter alias template for CPPASTNamedTypeSpecifier
Change-Id: Ie66b148aabaf7f73bb639359c46d3d2d974c305f
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-09-12 19:46:34 -04:00
Nathan Ridge
84689e06fd Bug 520913 - Improvements to HeuristicResolver
- Have resolveUnknownBinding() run the full "resolve unknown type"
    logic if the binding is a type.

  - Handle EvalTypeId

Change-Id: I97946453755ddcf6f382195ddb9fc7dcb2672b68
2017-09-02 16:32:01 -04:00
Michael Woski
f546a833d6 Bug 520913 - hover / open declaration for decltype and typeof keywords
Change-Id: I15db25080aa476e3e0e6f9c6ce063e9bd1e2b2b4
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-09-02 08:35:10 +02:00
Michael Woski
27b467cb11 bug 520805 - [codeassist] HeuristicResolver can't resolve enum scope
Change-Id: I8c820bd91c1f5775466697c2e0c63351ce69bcba
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-08-10 16:53:33 -04:00
Michi
e252398ee1 Bug 520783 - wrong AccessContext for heuristically resolved
CPPUnknownMemberClass

Change-Id: I5a24c7df1dc3b4c270c60b93327190c0461c4cd0
Signed-off-by: Michi <woskimi@yahoo.de>
2017-08-10 22:15:21 +02:00
Michi
b0ce8bc3fb bug 520470 - [codeassist] HeuristicResolver & qualifiedType resolution
Change-Id: I9569d776981dbf87a075aebcd0c07ce9f1470f47
Signed-off-by: Michi <woskimi@yahoo.de>
2017-08-10 15:43:59 -04:00
Jonah Graham
679896ec6e Bug 515500: Preserve known line numbers when updating ui
This resolves a significant UI performance regression so
now line numbers don't need to be recalculated for areas
where they are already known.

Change-Id: I4668d620cde24b7cd8c6a22e9c022eaf5b237ff2
2017-07-11 10:53:09 +01:00
Nathan Ridge
8d6cab41e7 Bug 516338 - Introduce alias template specializations
We previously modelled alias template specializations as alias template
instances, which was conceptually incorrect and problematic for a number
of reasons.

Change-Id: Ibca8b87bb3d54cd3ae312254a02e8522e446331d
2017-06-20 02:34:07 -04:00
Nathan Ridge
c24e5d17b3 Bug 517954 - ClassCastException in CVisitor.findBindingsForContentAssist()
Change-Id: I0780b422ee727def577f78ed600f66a3ef4728d0
2017-06-08 02:57:45 -04:00
Jonah Graham
b48696a6ea Bug 314428: add missing copyright header and format file
Change-Id: I79883240c004485787879383ee29663444ccf8ba
2017-05-17 13:39:47 +01:00
Felix Morgner
ca1ab7f52d Bug 491957. Preferences & save action for choosing const alignment
Conflicts:
	core/org.eclipse.cdt.core/META-INF/MANIFEST.MF
	core/org.eclipse.cdt.core/pom.xml
	core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/TextTestSuite.java
	core/org.eclipse.cdt.ui/pom.xml

Change-Id: I061fa28d2e0b37f6d00232ad619f23b892e13ce6
Signed-off-by: Mario Meili <mmeili@hsr.ch>
Signed-off-by: Benny Gaechter <benny.gaechter@hsr.ch>
Signed-off-by: Felix Morgner <fmorgner@hsr.ch>
2017-05-15 02:59:54 -04:00
Nathan Ridge
fb847a82ce Bug 408470 - Introduce SemanticTestBase to serve as a common base class for AST and index tests
This allows reusing more code, such as CommonCPPTypes and
BindingAssertionHelper, between the two test suites.

Change-Id: I8203191fc3a10565add0ae1bd25c98f743cd1e64
2017-05-14 02:08:24 -04:00
Jonah Graham
b564575d51 Bug 314428: speedup build console - limit UI thread
Re-wrote the BuildConsolePartitioner to do as many operations as possible
in the non-UI thread and only to update the UI thread in batches.

Key changes:
- The UI thread "pulls" changes when it is ready, this means that many
  lines of output are updated in one go. This compares to the "push" that
  the non-UI thread used to do. The previous code pushed a change to the
  UI thread on every line of build output.
- The limit on console size is now soft, rather than recalcuating the
  entire document on each line (i.e. add line at bottom, remove line
  from top) the document is truncated to the limit size as it reaches
  2x the limit size. This calculation is also done more effeciently by
  tracking the number of lines each partition contains rather than
  recalculating them.
- Folded most of the implementation of BuildConsolePartition into
  BuildConsolePartitioner. This is because the partioner has a global
  view and is much more efficient at determining if adjacent partitions
  can be combined. In addition, rather than having the complexity of
  splitting partitions that were too long, instead make sure we don't
  create such partitions in the first place.

Change-Id: I47543db3fef754e779684cae44d3316982f1bc0a
2017-05-12 11:51:08 -04:00
Nathan Ridge
60503efc58 Bug 512932 - Improve type checking of GCC builtins
Specifically, this patch:

  - Adds support for a new builtin, __builtin_assume_aligned.

  - Models __builtin_constant_p as a function instead of a macro.
    This inhibits constexpr evaluation, but allows for correct
    type-checking.

  - Diagnoses misuses of known builtins, instead of ingoring them like
    unknown builtins.

Change-Id: Ie5a26f2010dc5b19e6f32a8c6a1237fe88da393e
2017-05-08 23:04:17 -04:00
Marc-Andre Laperle
765960cec6 Bug 515545 - NPE when using Extract Function in the presence of auto variable
Change-Id: Id13e7afadbd3c92f1ab5a1448b9851f2d0c7d4df
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-04-20 15:29:44 -04:00
Jonah Graham
df26b628b7 Bug 515417: Disable intermittent testTypes_FriendClass
Manually testing this code shows it works, but this test fails
>50% of the time on Hudson causing significant numbers of
UNSTABLE builds.

Change-Id: Ie23e97e477d9b154ff33b38374bd257412241889
2017-04-19 13:09:26 +01:00
Jonah Graham
593dc77b6d Bug 515307: Run test order of magnitude faster
The break inserter test was running all display events for 200ms after
each simulated keystroke, but all sideeffects were happening synchronously
or being placed on the event queue synchronously. So speed-up is achieved
by running event queue until empty instead of effectively sleeping for
200ms

Change-Id: Icffd4d5526176e596cf8ce3ac716a4ae88d51159
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2017-04-15 03:44:40 -04:00
Jonah Graham
501fa87934 Bug 515101: Control folding on doc and non-doc comments
Change-Id: I77b5cc2209d52877318182009b4de8e9491a85f7
2017-04-15 01:14:52 +01:00
Jonah Graham
18a6002f07 Bug 515304: profiles to parallelize testsuite
Change-Id: I02095334c2176bfb9a2968d91b6175af37123f5b
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2017-04-14 20:03:36 -04:00
Jonah Graham
8592b892dc Bug 515178: Convert ui AutomatedSuite to new style
This change enables future tests to use new style annotations,
for example using @RunWith(Parameterized.class)

Change-Id: I4998e8b50fc7574c057b4f4a556205ce5a2497d6
2017-04-14 11:50:18 +01:00
Jonah Graham
f5aa2f3d65 Bug 515024: Fold adjacent single line doc comment
When the doxygen tool is on, adjacent single line doc comments were
not being folded together.

Change-Id: I88542047cba6c6d400a0b74a2637679cd122a920
2017-04-12 04:56:18 -04:00
Sergey Prigogin
4f70ea542a Bug 514197 - Organize Includes removes an include necessary for
instantiation of the body of a template function

Change-Id: I7a788f5ddcfae039acdec3a7985dcef364c5b8c0
2017-03-27 20:29:15 -04:00
Sergey Prigogin
151a4c05e5 Bug 512260 - Organize Includes should prefer .h and .hpp files to files
with other extensions

Change-Id: I115a3441d98d220f0d2b985b7d595971a146e8b6
2017-02-15 20:02:20 -08:00
Marc-Andre Laperle
0046099052 releng: Make use of Tycho POM-less functionality
This removes a lot of pom.xml from the source tree. This is using the
"POM-less" Tycho functionality.
See
https://wiki.eclipse.org/Tycho/Release_Notes/0.24#POM-less_Tycho_builds

One advantage of this is that you do not need to update the version in
the pom.xml when you change it in the MANIFEST.MF because the pom.xml is
automatically generated. This also reduces a lot of the duplicated
information and pom.xml repetition.

- Maven 3.3 and up is required.
- Only eclipse-plugins and eclipse-features can be pom-less.
Repositories, target and others still have pom.xml.
- New parent poms are added because a parent is necessary directly one
level above the plug-in/feature that will have its pom generated
- Some test plug-ins had to be renamed .test -> .tests because it's
required so that it detects that it's a test plug-in
- Some suites were renamed so that they all use the same consistent name
"AutomatedIntegrationSuite"
- Profiles were added for the more common test configurations. They are
activated by the presence of simple .properties files that only serve to
activate the correct profile. The profiles:
  - One for UI tests (UI present and start in UI thread)
  - One for SWTBot tests (UI present and do not start in UI thread)
Other test plug-ins that are too different are kept intact and still
have
a pom.xml
- Fragments are kept intact since they all have different target
platform configurations

Change-Id: I9d73380eb766f547830c552daf08053a30b1845c
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-02-13 23:19:56 -04:00
Nathan Ridge
2e1f2d475a Bug 511653 - Completion of inheriting constructor in using-declaration
Change-Id: If20d85bd6199e8f08152f3a5801bfb30b61d1d09
2017-02-12 00:04:11 -04:00
Nathan Ridge
e20812dc8b Bug 511522 - Navigation to type named by 'auto' in variable declaration
Change-Id: I3f6a35cb2498d7a9de31db7c283027fbc33fe688
2017-02-09 02:20:35 -05:00
Nathan Ridge
ec3ab3016d Bug 511331 - Do not color entire qualified name with problem highlighting
Change-Id: Ic712ec2e03bdf03f5ae97019fb9ae8994c5dec23
2017-02-09 02:20:35 -05:00
Sergey Prigogin
5e793c9b43 Revert "Bug 399147 - Make 'Find Reference' find using-declarations"
The change is invalid since a PDOMName can participate in only one
binding at a time through its BINDING_PREV_OFFSET/ BINDING_PREV_OFFSET
pointers.

This reverts commit 2706699543.

Change-Id: I1a4dd7b189b85a0d9c1cca2660d33ab7351a025c
2017-02-08 12:46:40 -08:00
Nathan Ridge
a44bef00d6 Bug 511274 - Compute correct replacement length for ParameterGuessingProposal
Change-Id: Ia2d6f10086f8d2a9ec922a3ff37eadc8ab94c9ed
2017-02-05 17:54:53 -04:00
Nathan Ridge
5a4e821cfb Bug 511048 - Offer completion proposals for nonstatic methods in a using-declaration
Change-Id: Ifb3aee10c354aebe606c439cdda1453b1cc29095
2017-02-03 00:47:57 -04:00
Nathan Ridge
1c60b844c5 Bug 509185 - Completion of constructor call with uniform initialization syntax
Change-Id: I3b0b3c5dd32ee09755e58cdb3dbc6af019ddd650
2017-01-29 17:15:00 -05:00
Nathan Ridge
a395647e48 Bug 510788 - Syntax coloring for template arguments in function template specialization
Previously, the arguments shared the color of the template-name.
Now, the arguments get their own colors.

Change-Id: I27af4146717a19095f1ac22188eedb8a71d9466c
2017-01-28 14:40:45 -05:00
Nathan Ridge
09476c126a Bug 461680 - Extend content assist's function parameter hints
In addition to showing the parameter list (with the current parameter
bolded), the hint now shows the function's name, return type, and
whether or not it is virtual.

Change-Id: I24be893ee8968fca8d9893230266ec98e2b9ae5a
2017-01-26 20:32:43 -05:00
Nathan Ridge
b332cdaf75 Bug 497190 - Do not use ParameterGuessingProposal at all when parameter guessing is disabled
Change-Id: I9feda3d365eeb935296adbc7144b0f504017f87a
2017-01-25 12:47:19 -04:00
Nathan Ridge
a90caec05e Bug 395562 - Follow-up to fix a regression where completing the method name in an out-of-line method definition would no longer insert parentheses
Change-Id: I8bbf083e874f6d01aa85c2ba4173685228160963
2017-01-24 22:07:55 -05:00
Nathan Ridge
3c20d6f0ea Bug 292229 - Consider files with other extensions for inclusion proposals
Proposals where the extension is not a known C/C++ header file extension
are ranked below proposals where the extension is one.

Proposals where the extension is a known C/C++ *source* file extension,
and proposals where the filename begins with a '.', are still not considered.

Change-Id: I80784f8f15a01b05977a288affbe3958f1400bdf
2017-01-24 17:29:01 -04:00
Nathan Ridge
c5f3bbb55a Bug 292229 - Refactor the content assist test suite to make adding new flags easier
Change-Id: I06bd3590e037e0761a62c454dec497d3043e7e08
2017-01-24 16:28:29 -05:00
Sergey Prigogin
1d6cf48198 Bug 510794 - Tab character is ignored at the beginning of line inside a
raw string literal

Change-Id: Idc8dfba8900495933f681f809dc96c4d92a6db8a
2017-01-23 11:51:39 -08:00
Nathan Ridge
8956d2c7e6 Bug 72809 - Improve content assist inside inactive code
Change-Id: If24e354d00aaf886da1571fc525b556e08c94897
2017-01-22 21:21:39 -04:00