1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00
Commit graph

25585 commits

Author SHA1 Message Date
Nathan Ridge
2aeb75d147 Bug 522509 - Handle typedefs in __is_class builtin
Change-Id: Ief3efa8e660ab1f7ec11788be8dad69da2501aa6
2017-09-20 00:15:59 -04:00
Jeff Johnston
ef5147a046 Reinstate commit 709689b36e
- This commit is still needed to allow CDT Sonar job to run
  so that features that have same name as plug-ins
  will be distinguishable by Sonar job

Change-Id: I3eb3f3cf94d5f4338d72c5d19d0baf2f7506c388
2017-09-19 15:33:21 -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
Nathan Ridge
9011fe1a95 Bug 522066 - Use the declarator as the key for the recursion protection set in createAutoType()
Previously, the decl-specifier was used as the key, but a decl-specifier
can be shared by multiple declarators, so seeing the same decl-specifier
against doesn't necessarily mean we have infinite recursion.

Change-Id: I165088c5379d412d1c31f2655c20a02629fbe596
2017-09-19 00:28:34 -04:00
Andrey Loskutov
398307d9bb Bug 522411 - ConcurrentModificationException below
CModelListener.addLastRecentlyUsed (thrown in
LinkedHashMap$LinkedHashIterator.nextNode)

CModelListener reacts on all the resource events, but is NOT MT-safe due
the not guarded access to the "fLRUs" map, which can be iterated AND
modified at same time by different threads.

This commit introduces synchronization on the "fLRUs" map field. This is
safe as the field is private and not exposed to other objects, and the
code inside synchronized block does not call into other locks which
might interfere.

Change-Id: I3e601f02e93e40a1454c9a581fa46378904eb3dc
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
2017-09-18 17:01:06 +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
Andrey Loskutov
eb70c04ceb Bug 522176 - NullPointerException in DeltaAnalyzer.processResourceDelta
Change-Id: I25606e5c1f4e15e9048df139bb6a2e60f8214508
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
2017-09-13 11:24:38 -04:00
Nathan Ridge
dfd7a7164c Bug 521817 - Implement PDOMCPPAliasTemplate.update()
This ensures that if the target type of an alias template changes,
the target type is updated in the index during an incremental index
update, without requiring a full index rebuild.

Change-Id: I8800e3c1701409276f8db64000499a5fa9caf6a9
2017-09-13 11:23:03 -04:00
Nathan Ridge
39795a203a Bug 521848 - NPE in CPPFunctionTemplateSpecialization.equals()
Change-Id: I666c1a5d21aa7b644a6ebdc92be3ee51acda42d2
2017-09-12 19:48:01 -04: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
Doug Schaefer
feed2bbf85 Disable Mac signing of the standalone debugger app.
Change-Id: Ie39f65b70206354b73b2a69a9734dbeba3974c6f
2017-09-11 13:37:22 -04:00
Jeff Johnston
a985a9753f Bug 522077 - New Autotools project doesn't open source file by default
- add open file process to Autotools C ANSI hello world template.xml
- add open file process to Autotools CPP ANSI hello work template.xml
- add open file process to Autotools Shared library template.xml

Change-Id: I2fcba56973374d00006f8ce5664581f3fcc419cf
(cherry picked from commit 41e54f1656)
2017-09-11 11:49:01 -04:00
Doug Schaefer
d8cc0751ae Update feature versions to CDT 9.4.
Also remove remaining pom.xmls for feature projects.

Change-Id: I78d6335f92d70ad2699b8a25801ff72d2935aefe
2017-09-11 11:18:42 -04:00
Doug Schaefer
c3f3da9f25 Core Build - add support for Generic target
Adapts to LaunchBar's new Build Tab extension.

Change-Id: Icad41a7083f4389a546234d2835a9c4b60fa0eae
2017-09-07 15:52:28 -04:00
Nathan Ridge
47fe12a179 Bug 521543 - Correctly identify narrowing conversion to boolean
Change-Id: I07672f5043cbb68070185d3d7d4993794b9caa2b
2017-09-07 01:32:17 -04:00
Nathan Ridge
e75a209b9f Bug 521274 - Defer execution of constexpr function body until function is fully instantiated
Change-Id: I35a63d15e7bfa7d3db98235eaa9dfe23e28950ac
2017-09-07 01:30:34 -04:00
Nathan Ridge
398ca82b48 Bug 521265 - Check that the platform is running before querying bundle group providers in CCorePlugin.getCDTFeatureVersion()
Change-Id: I5910e8c7decd7c8a347ca640f9c99875ad95fcf6
2017-09-07 01:26:09 -04:00
Martin Oberhuber
a0ab38124c Bug 519886 - eclipse CDT failed to create PTY on macOS 10.13 beta
Fixed by getting rid of legacy code for opening a master pty, and
copying the related code from org.eclipse.cdt.core.linux instead.
Only getpt() had to be replaced by posix_openpt(). Compiled on
OSX 10.12 - tested on MacOSX 10.8 and 10.13 beta 7 (64-bit each).

Change-Id: Idade001aed41abafc0d500695a4b51179bb9b738
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
2017-09-04 06:35:15 -04:00
Martin Oberhuber
1019030e74 Bug 521788 - spawner doesnt kill child process on MacOS X
Fixed by copying code from org.eclipse.cdt.core.linux that
contains the fix from bug 119387 : set the process group by
calling setpgid() when forking a process, and use killpg() for
killing the entire process group on termination.

This also aligns MacOS code fully with Linux code. Tested on
MacOSX 10.8 and 10.13 beta. Binaries will be submitted with the
related fix for bug 519886.

Change-Id: I87df87caa88cff60b4d9eee2252252234d1a4f84
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
2017-09-04 06:35:15 -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
Marc-Andre Laperle
11817c1c6a A basic LSP4E integration with Clangd
This plug-in adds an simple integration between LSP4E and Clangd.
It simply launches clangd when opening C/C++ files with the
Generic Editor.

To try it, you need to:
- Import the projects in your Eclipse workspace (you can only import the
lsp4-cpp ones, the sources for CDT are not needed)
- Open lsp4e.cpp-staging.target and set it as the target platform
- You need to have clangd built and on the PATH. See
https://clang.llvm.org/get_started.html
- Start Eclipse: right-click on a project > Run as > Eclipse Application
- In the new Eclipse instance, you can right-click on a C/C++ file >
Open As > Generic Editor. This should make use of clangd, providing some
basic diagnostics and formatting commands.

This should help the Eclipse community to start playing with Clangd.

Change-Id: I688d3a952dbc80d9f61186178f3c8a033afcc587
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-09-01 11:31:57 -04:00
Nathan Ridge
33a7f1e533 Bug 520999 - Map PDOM class types to AST before looking up constructors
Change-Id: Iac865cbde8ed4ba2b002eea0da7d943598d33bc1
2017-08-24 00:57:23 -04:00
Nathan Ridge
30c0a1da7c Bug 520965 - NPE in AbstractCPPClassSpecializationScope.getBindings()
Change-Id: I02494b27bf697821361a896235b38075b161f0e7
2017-08-22 02:31:15 -04:00
Jonah Graham
fb0df4a130 Cosmetics.
Fix bad line endings in memory/**/*.java

Change-Id: I34b4966b7d3fd965ea43b2f676b77ae9b7b4f2aa
2017-08-18 21:24:31 +01:00
Jonah Graham
9913afd1eb Update target platform to Release repo for Orbit
The S builds have been removed.

Change-Id: I53616d38ba497097d55605f73b45d7c2f36c357b
2017-08-15 11:51:43 +01:00
Jonah Graham
5acb4c10d8 Bug 520952: Use filename when handling function breakpoints in console
Change-Id: I6bcdc658bf4c9453cdbe156808b292296a214fde
2017-08-15 08:35:46 +01:00
Michael Woski
e8bfecea0b Bug 456579 - Improve CSourceHover and OpenDeclaration for TemplateIds
CSourceHover did not know how to handle UnknowMemberClasses

Change-Id: I4ef6a4ad794e670c4d5e9ccc9cea204f8d273f2a
Signed-off-by: Michael Woski <woskimi@yahoo.de>
2017-08-11 23:10:39 -04:00
Thomas Corbat
c7b6aa3bd5 Bug 520893 Pack expansion in IASTTypeId is lost
Change-Id: I9137d028c56ce62ee02571099a7a5ab1b2b481cd
Signed-off-by: Thomas Corbat <tcorbat@hsr.ch>
2017-08-11 14:29:02 +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
Andreas Sewe
18831f4407 Bug 520846 - Use ArrayContentProvider.getInstance() where possible
As ArrayContentProvider is stateless, re-using the global instance
avoids a few allocations.

Change-Id: Ia378195c2c90e35badcf6e2c1938a93877a442e6
Signed-off-by: Andreas Sewe <andreas.sewe@codetrails.com>
2017-08-10 11:36:45 -04:00
Doug Schaefer
35135aa605 Bug 519529 - fix handling of quotes in the GCCToolChain scanner info.
Some Arduino boards have properties that feed into defines that have
spaces in them. The boards.txt property file adds quotes around those
things. When resolving the recipe property it results in -D gcc
options that have embedded spaces in them. That messes up the
ProcessBuilder and the command fails. We'll just strip the quotes from
all the command args since they aren't needed in this scenario anyway.

Change-Id: I41086ee264b8715823b3eab7931df4371b9ec873
(cherry picked from commit fc7b2f781c)
2017-08-10 10:06:42 -04:00
Nathan Ridge
08ea2dc248 Bug 520049 - Perform array-to-pointer conversion on operands of C conditional expression
Change-Id: Idd57bbcf12b7edf5c19fbd3debb8e64ea7851107
2017-08-08 00:52:06 -04:00
Philippe NOEL
10b3a4ea3a Bug 520360 - First created target does not appear in BuildTargetDialog
Change-Id: Ief40f2ee09d3714c65526086db993f6c630dda81
Signed-off-by: Philippe NOEL <philippe.noel@st.com>
2017-08-02 09:28:32 +02:00
Jonah Graham
07a9aa0543 Bug 520245: Avoid writing launch files with no changes
On shutdown of a debug session the launch files are written, often
(normally) with no changes. This commit prevents unneeded deltas
on the launch files and prevents a lot of the callbacks of launch
configurations changing. This also ameliorates the case in Bug 500988.

Change-Id: Iddbd9c5c5695dcd2d255cbc761a48316fa5acbb1
2017-07-28 12:00:49 +01:00
Jonah Graham
7f3b2120fe Bug 520257: Avoid touching file with unchanged content
When creating the settings.xml, avoid writing to the file unless
the contents have actually changed. This avoids a resource delta
that caused unneeded rebuilds.

Change-Id: I83cea84e96d006f99a1c264f283d4bba4ad68784
2017-07-28 10:53:01 +01:00
Jonah Graham
594e65c8c0 Bug 520163: Use camel case for new command line argument
Change-Id: I2e70fd288e0cda8a0fc8d7e8ce53622c4db50abb
2017-07-27 13:53:22 +01:00
Jonah Graham
df31b110d0 Bug 520163: Provide a way to exclude Scanner Errors from headless build
Implemented by allowing users to specify type of error
markers to consider, as well as ability to print out
the error markers that are causing build to fail.

Change-Id: Iaa0b41be9ec1c1ff5268734697f361dac6fec49e
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2017-07-27 13:06:50 +01:00
Nathan Ridge
10ef1f11b0 Bug 519819 - Correctly classify unknown member binding as an unknown member class when it appears in a nested-name-specifier
Change-Id: I2d153e8676403709d4d674d3dcead6896ff9cafe
2017-07-27 00:35:22 -04:00
Nathan Ridge
862cf70fa3 Bug 519790 - ClassCastException in CPPVisitor.createAutoParameterType()
Change-Id: If200ee08b61b94af2d559505498b4dbc585c3d6e
2017-07-27 00:33:42 -04:00
Marc-Andre Laperle
01a45c3d00 Bug 517402 - Ambiguous namespace, conflicting with a different kind of symbol
Change-Id: I5a648e23f1222c1bbf75a13b367dd51dd6231f61
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-07-26 13:49:34 -04:00
Jeff Johnston
dddc340130 Fix Debug in Container
- on Windows (possibly Mac as well), we can't use the ip of
  the Container to contact the gdbserver as this address
  may be hidden from the host behind a VM
- instead use the localhost port that the tcp/2345 is mapped
  to which the Docker machine etc.. forwards back
- fix this in ContainerLaunchConfigurationDelegate

Change-Id: I9f85bf0d0d9dec183c504ba4fb7adc55d4a038bb
2017-07-21 17:37:42 -04:00
Nathan Ridge
feed18180b Bug 519196 - NullPointerException in IndexUI.getCElementForName
Change-Id: Ia6ad8932056c59f7f818833ba8407dee0e2fcdad
2017-07-17 19:54:01 -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
Patrick Koenemann
3a57ea79ab Bug 514708 - Performance improvement indexer by caching Strings.
Change-Id: If07961701bd568f674918c484cad16699bfa1cdf
Signed-off-by: Patrick Koenemann <patrick.koenemann@itemis.de>
2017-07-06 21:30:24 -04:00
Nathan Ridge
8286a3e2d4 Make sure stack traces are logged for CoreExceptions
Change-Id: I4686473c8925c241f16a79892382359829ec1625
2017-07-06 02:10:45 -04:00
dschaefer
c4990122ac Bug 519190 - Get CMake working with MSVC toolchain
Adds in Core Build support for the MSVC toolchain. Fixes issue
with PATH in the core build configuration since on Windows it's often
Path.

Change-Id: I3eb201bc22bf42341207e8f3bbef999d4d174f05
(cherry picked from commit 7f3745c765)
2017-07-05 10:18:36 -04:00
Jonah Graham
dd07cba37b Bug 519125: Expose console refresh rate as a preference
Change-Id: I342512ff52887bc34e17185c2aa9faa34893996a
2017-07-04 11:55:45 +01:00