1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 22:52:11 +02:00
Commit graph

25839 commits

Author SHA1 Message Date
Jeff Johnston
55569e158c Bug 538958 - Meson project built in Container not indexing properly
- add synchronized keyword to the various scanner info collecting
  methods in ContainerGCCToolChain

Change-Id: I476e0c191379621d5ca8ef266c8590a0954ab4a5
2018-09-11 23:44:25 -04:00
Jeff Johnston
9a1aa302a7 Bug 536884 - Removing header cache should cause ScannerInfo refresh
- don't reset setting in shutdown() method as this clears the
  property prematurely for meson and cmake projects

Change-Id: I2dd2467427d00aeade335319ec2ceec9f6d7168d
2018-09-11 17:55:00 -04:00
Nathan Ridge
95133b4b3f Bug 537534 - Support binary expressions with an initializer-list as the second operand in CPPASTBinaryExpressions.acceptWithoutRecursion()
Change-Id: Ifb37df94c9b33f7eeeca4ab041d8f0608377b8cd
2018-08-25 23:13:10 -04:00
Nathan Ridge
8c3ed4c8a3 Bug 536805 - NPE in CPPEvaluation.maybeApplyConversion()
Change-Id: I42e780f90aacf9383b722a8b82e441d4032d14e7
2018-08-25 23:13:00 -04:00
Nathan Ridge
f4178eb1f8 Bug 535548 - Infinite recursion loading function whose return type refers to a parameter from the index
Change-Id: Ibff680983cc8ac0bd9d33d8f2247a9f0ca2fe2f3
2018-08-25 23:12:49 -04:00
Nathan Ridge
fae039b629 Bug 535559 - Index search for entity inside toplevel anonymous namespace
Change-Id: I9fdc268819b2298d0b3aeb9db9c29f1a0158d2bb
2018-08-25 23:12:36 -04:00
Hansruedi Patzen
e0e6a54caf Bug 537924: Unable to build javadoc maven target
Turns off doclint for Java 1.8 and greater because the javadocs are
incomplete and won't build otherwise.

Some files also had encoding issues with some characters which caused
the javadoc build to fail, these characters have been replaced.

Change-Id: I04690644bec6d7c3219cb0438cb3db6593fefd3a
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-08-14 19:12:48 +01:00
Jeff Johnston
fe5703bf3b Bug 537632 - Meson Property Pages missing some fields after configure
- fix MesonPropertyPage logic concerning a configured meson project
- for possible values, add "-" and "/" as valid characters
- in state flow, don't just wait for blank lines, an option
  header can occur in the middle of a group or a new option group
  name can also occur

Change-Id: I2c6c8f9fb15db0425f03e422b20b58ace5234fd4
(cherry picked from commit ac81db720c)
2018-08-02 18:57:36 -05:00
François Godin
3603986d0b Bug 537118 - CMake and Meson integration now working on Windows.
- The commands are launched directly instead of using the shell
(/bin/sh) which is not available on Windows.

Change-Id: I5f8d99a04da1c860bcd37d138103a1bd4e501547
Signed-off-by: François Godin <copelnug@gmail.com>
(cherry picked from commit 0b2053dcb2)
2018-08-02 16:27:31 -05:00
Jonah Graham
35a590e00b [releng] Bump version to 9.5.3
Change-Id: Ie8180cd33d2a9831e8be10519ef40efd9110b56b
2018-07-23 20:38:33 +01:00
Jeff Johnston
f90f1e2cd8 Bug 536413 - ConcurrentModificationException when indexing
- apply patch submitted by duh-sa-sekirom@hotmail.com
- in GCCToolChain join the threads that do include path and macro
  searches before waiting for process so as to prevent a
  ConcurrentModificationException

Change-Id: Iefe6f013007b7bbf00117b5295b5e27489a72834
(cherry picked from commit e0c656d2e0)
2018-07-17 15:21:10 -05:00
Jeff Johnston
5f449f8a4c Bug 536884 - Removing header cache should cause ScannerInfo refresh
- add a new IToolChain property "cdt.needScannerRefresh" that is
  set if scanner info needs to be refreshed
- for a Container build, turn the property on in ContainerGCCToolChain
  startBuildProcess() if the Container headers for the toolchain's
  have been deleted
- in CBuildConfiguration processLine(), look for the toolchain
  property when looking to see if scannerinfo should be calculated
- in CBuildConfiguration, turn the toolchain property off in
  shutdown()

Change-Id: I67a3537d1e2967dc15b66a1c37abda1ae8f78bff
2018-07-12 14:39:14 -04:00
Jeff Johnston
893784ca80 Bug 533363 - Indexer spending a lot of time in CommandLauncherManager
- it seems that fetching the active configuration for a project
  using an ICConfigurationDescription is time-consuming
- the active configuration is sought in ContainerCommandLauncherFactory
  to get the optional build properties and thus we can figure out
  if the active configuration has enabled container build or not
- see if we are given a CConfigurationDescriptionCache and it
  contains a BuildConfigurationData element which allows us to
  get an IConfiguration without creating a new one, serializing
  it etc.. which is adding to the time taken

Change-Id: I8973f1707a602a73fc5ac751f12a1e8dbd549aab
(cherry picked from commit a394557c60)C
2018-07-12 10:58:39 -05:00
Jonah Graham
ea35968c11 [releng] Bump version to 9.5.2
Change-Id: I0fb0c7ecc2e59cda3e0bb7efb98fd2a72c5aca80
2018-07-06 14:19:08 +01:00
Jeff Johnston
ee5f57d536 Bug 536363 - Meson project include paths wrong when using ccache
- fix GCCToolChain and ContainerGCCToolChain to not blindly
  take the first token in the command string when processing
  scannerinfo; if it is "ccache", take the second token instead

Change-Id: I4b2b7dfaccae6f3ec968bbe4217c57994ad71963
(cherry picked from commit a5ed8ea2a4)
2018-07-05 09:22:19 -05:00
Doug Schaefer
a1ed9cdb39 Bug 536396 - Handle corrupt scanner info cache files
We were not handling JSON parse errors when loading the scanner info
cache files which causes havoc at index time.

Change-Id: I3a4ee6424134fe756543e4429e9e97b911cda99e
2018-07-04 10:49:47 -04:00
Jeff Johnston
4b8274b9a1 Bug 536317 - Deadlock at start with launchbar and docker tooling enabled
- fix ContainerTargetTypeProvider changeEvent() to start a Job and
  return immediately so it will not cause a DockerConnection
  to be held in multi-threading
- move the DockerConnectionManager addConnectionListener call
  to end of init() method so the fetching of images won't cause
  a notification event to occur
- at end of init(), call CBuildConfigurationManager.recheckConfigs()
  to make sure any disabled configuration due to a missing
  IDockerConnection is now put in the configs master list and
  removed from the noconfigs list
- make similar changes to ContainerGCCToolChainProvider

Change-Id: Idc120d613b99ec365522f5e7bf5da82d1b362425
(cherry picked from commit 2bcd06f097)
2018-07-03 15:52:57 -05:00
Jonah Graham
054750be9a [releng] Proper URL for platform with milestones being removed
Change-Id: I3a46159e5cd6f298f85fee148517f90521dfe602
2018-06-27 17:48:17 +01:00
Jonah Graham
0f2ab7f0f0 [releng] Update CDT Baseline to CDT 9.5
Change-Id: Icb762d8a4ac56153f7d7637a258fedfcd5b774f0
2018-06-27 11:56:51 +01:00
Jonah Graham
ce52b242c0 [releng] Bump version to 9.5.1
Change-Id: I059636ef27e3bec7e49cc7d6f37f70d8d9c245ec
2018-06-27 11:56:51 +01:00
Doug Schaefer
e6550c7a10 Revert "Bug 534286. Made read(byte[],int,int) blocking"
This reverts commit e5c7bb64f7.

Change-Id: I565f9eb2728d0ff0199e61f3f25df4aa0b64f17b
2018-06-16 17:15:31 -04:00
Doug Schaefer
3b44424539 Bug 535972 deal with relative include paths in GCC scanner info
We weren't dealting with relative include paths returned from
the call to gcc -E properly. Resolves them against the build
directory before checking if their a directory. Results in them
added.

Tested with ESP-IDF's feature/cmake branch.

Change-Id: I1e2583e03cce6380ee4382146b177978c9c81806
2018-06-16 16:46:04 -04:00
Nathan Ridge
025742ca91 Bug 531701 - ClassCastException in
AttributeWriter.writeGCCAttributeSpecifier()

* Added test to reproduce initial issue.

Change-Id: I72e60fb2244b7d40492bfcdeaa58a8707c39e277
Signed-off-by: Thomas Corbat <tcorbat@hsr.ch>
(cherry picked from commit 4e4e010e33)
2018-06-11 08:56:06 -05:00
Jonah Graham
a91cd76b74 [releng] Use Photon specific locations for target platform
Change-Id: Ifeda1a0256cbfa9c87acd9a9bc8bb755b533fed3
2018-06-09 23:15:58 +01:00
Jonah Graham
5d4915cb66 [releng] Set paths to 9.5 on the branch
Change-Id: I7df8191b469bfc0f0d241229563c26a1d85fda4b
2018-06-05 21:08:15 +01:00
Jonah Graham
05f8dddcf2 [releng] Update to Tycho 1.2.0
Includes reverting 851295e821:
[releng] work around Tycho issues of obtaining *.jre.javase [10.0.0]

Change-Id: I1d49b519ba111e48545ef37c991859dfa68960cd
2018-06-05 09:51:11 +01:00
Felix Morgner
5ec251a791 Bug 532120: Catch by const reference ignores const placement setting
The original implementation used plain-text string manipulation of the
IDocument. This changeset changes the implementation to make use of the
ASTRewrite infrastructure, which automatically honors the const
placement setting.

Change-Id: Ib5ae9381b93ca8ab4d1ad3e16b1c3c8b1ec62d78
Signed-off-by: Felix Morgner <fmorgner@hsr.ch>
2018-06-03 06:37:37 -04:00
Hansruedi Patzen
5c5ce995f6 Bug 534813 - ASTWriter swaps noexcept and pure virtual specifier
Fix and test

Change-Id: I14088e69aed829940fb1e9f5197dedf18d9bb7a5
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
Signed-off-by: Thomas Corbat <tcorbat@hsr.ch>
2018-06-03 04:43:08 -04:00
Hansruedi Patzen
7b53e75fb2 Bug532849 Inline namespace not recognized by formatter
Change-Id: Ie7f13884967685fcc93c8af3955d90825d6f9879
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
Signed-off-by: Thomas Corbat <tcorbat@hsr.ch>
2018-06-03 04:40:58 -04:00
Jeff Johnston
cf25db1d34 Bug 535473 - Run/Debug buttons for Container target don't run/debug
- Launch bar is usually expecting a LaunchConfigurationTargeted
  Delegate which calculates the binary but Container build
  uses the ContainerLaunchConfigurationDelegate which expects
  the program name, working dir, connection, and image id
  set up as ILaunchConfiguration attributes
- modify ContainerLaunchConfigurationDelegate to add
  finalLaunchCheck method which can verify if the launch
  config attributes are set up and if not, set them from
  the build config (since this is post-build)
- fix getImageName() in CoreBuildContainerLaunchConfigProvider
  to use toolchain attributes

Change-Id: Iad6cc26928c33e964650b99844e065df8653858f
2018-06-02 10:34:52 -04:00
Jonah Graham
06bb3101df [releng] Update to Orbit R build for Photon
Change-Id: I86791fcfe8e14259bf15976ae99ba4189eaa1530
2018-06-01 15:36:55 -04:00
Hansruedi Patzen
278979870c Bug 534808 - static_assert without message not recognized (C++17)
Fix and test

Change-Id: I785ecfd0715f1fa8ff86b87bd01d16ac6d5d5da2
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
Signed-off-by: Thomas Corbat <tcorbat@hsr.ch>
2018-06-01 16:22:37 +02:00
Jonah Graham
45279d5ffc Bug 511161: Early fail on non-absolute URIs when looking for files in workspace
Change-Id: Idefa850b3d43e13d878d5a19bd89bd42ee1c534f
2018-05-30 19:11:24 -04:00
John Moule
93cfa42618 Bug 534309: NPE in breakpoint filtering
Guard against NULL oldValues, which is legitimate, in which case use an
empty Map.

Change-Id: I78ac252d3e91d431340320719cb57b32145813f0
Signed-off-by: John Moule <evil_bandit_betamax@yahoo.co.uk>
2018-05-29 16:54:59 +01:00
Hansruedi Patzen
f65fa5b7c5 Bug 535196: [C++17] Support *this in lambda capture
Implementation and tests.

Change-Id: If32911514eb62078215b5f06be12289fa571e9a3
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-05-29 08:24:51 +02:00
Doug Schaefer
eb197ea3c7 Bug 535091 separate out the two streams for macros and defines.
The output of the call to gcc to pick out the defines and include paths
produces them on different streams, defines on stdout and paths on
stderr. Separate the scanning of the two into two threads.

Change-Id: I3173d3619e53d13a51a6e283eb320a618daacf21
2018-05-29 00:13:47 -04:00
Jonah Graham
0f8f4a24cf Bug 535239: [releng] use download.eclipse.org for launchbar/tools.templates
Change-Id: I44cfdd45631171e642c4907e5649c3a6237b3158
2018-05-28 19:52:34 -04:00
Jonah Graham
ab02462cdc Bug 519391: Only redraw the changed lines
When a line is double-clicked, or the highlight error is otherwise
changed, the redrawing of the highlighting was done by redrawing
the entire build console document. This was slow on very large
documents. Instead only redraw the line losing the highlight (if
any) and the line gaining the highlight.

In addition, as we only change the foreground colour to highlight,
avoid redrawing the background.

Change-Id: I5e652449715a588cb8702e0100a472d1f566e2a8
2018-05-28 19:49:29 -04:00
Jonah Graham
d462ce74ff Bug 519391: avoid iterating and copying large lists
The BuildConsolePartitioner used to compute partitions from offsets
by iterating over the list of partitions. This strategy is fine
for small build outputs. But outputs in the 100,000+ line range
can have huge number of partitions. This commit updates the logic
to take advantage of the fact that the partitions are sorted
and contiguous to do binary searches to find the partition, and
uses a new method (computePartitioningAsList) to use a view onto
the original partitions list instead of significant copying.

Change-Id: I4395df36431a6ae45e6b77d6f76fd29532347ac5
2018-05-28 19:49:16 -04:00
Hansruedi Patzen
957dae8f4e Bug 413527: [C++14] Support Lambda init-captures
This patch adds parsing and semantic support for lambda init-captures.

Change-Id: Ia5f39ea6f8780ecd6a9685f432bcbdf39e09c82a
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-05-28 18:30:30 -04:00
Jonah Graham
74c80478d9 Bug 534332: Mark long deprecated interfaces as noimplement/noextend
Change in super-hierarchy caused API breakage. As these interfaces
have long since been deprecated, rather than adding default methods
for them, simply mark them as noimplement/noextend. The implementation
in CDT already has the new effective method - getAttributeSpecifiers() -
implemented.

Change-Id: I252fdeb33c0edcbe73338dc6fca477201bd4d468
2018-05-28 17:25:52 -04:00
Jeff Johnston
ce857c058c Bug 535139 - Container target set-up causes NPE
- add null check before accessing ordered tool chains

Change-Id: I713a55f8e887b642aa4a159e59c454de9a97955a
2018-05-28 13:42:51 -04:00
Waqas Ilyas
e5c7bb64f7 Bug 534286. Made read(byte[],int,int) blocking
Added a loop in read(byte[], int, int) to block until any input is
available. Or until the port is closed, or an exception occurs.

Change-Id: I1ead6f465571274e77e74de685b8185c8cdde108
Signed-off-by: Waqas Ilyas <waqas.ilyas@gmail.com>
2018-05-28 10:36:44 -04:00
Jonah Graham
35b4bf02de Bug 535024: Revert increment to major version number
Within CDT new constants in interfaces do not require major version
increment, just a commented API filter. However in this case as the
interface is a grabbag for constants, it is even more appropriate
to mark it noextend/noimplement

Change-Id: I1ac6da12093bdd3e92cfa51c097383c9964f41a2
2018-05-26 18:46:49 +01:00
Jonah Graham
851295e821 [releng] work around Tycho issues of obtaining *.jre.javase [10.0.0]
This does not happen in Eclipse using the target platform directly,
and when this last happened for [9.0.0] this workaround
worked, as documented in https://bugs.eclipse.org/bugs/show_bug.cgi?id=530207#c1

Change-Id: I55ce926c0ad73e78d24d1c0e78a6db7cce4d101e
2018-05-26 14:20:14 +01:00
Hansruedi Patzen
dd5c8726a7 Bug 527954: [C++14] Syntax error when parsing complex udl ""if
With this patch we allow any keyword to be used as a UDL operator, which
for example GCC compiles fine with. They are then no longer highlighted
as keywords but colored the same as normal text. This can be overridden
by coloring overloading operators differently.

Change-Id: If80faf0f3dc599ab4f12fe98977c556aaaefe6aa
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-05-24 18:52:08 -04:00
Torbjörn Svensson
a7b0a1fe80 Bug 535024: Use deviceId for determine JTAG probe
The name of the JTAG probe is not translateable since the name is saved
as-is in the launch configuration. To make the string translateable, use
the id instead to select probe implementation.

Change-Id: Id7e654ea1e26f47cd1c8ccfec857a94f3be9e0ad
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
Signed-off-by: John Dallaway <john@dallaway.org.uk>
2018-05-24 18:24:21 +01:00
Jeff Johnston
4c50b40f53 Bug 535014 - cannot debug in a container
- add check for network ports coming back empty for a Container
  launch and if so, fall-back to use the ip address of the Container
  for the remote host

Change-Id: I83d68a10e2dc92f7d0f27bb9dec304388594b4a3
2018-05-23 19:15:17 -04:00
Jonah Graham
d5b2f61dd7 Bug 534839: Add missing dependencies to standalone product
In particular, new version of ECF requires org.eclipse.equinox.concurrent

Change-Id: I909565b868fce44dea54ac3df985708d523304b0
2018-05-20 16:58:19 +01:00
Jonah Graham
6c074cc1c8 [releng] Update dependencies to Photon contributions
Change-Id: I6ba869acc9fda2d08a6bdc9a04f5f52cefdcf8c9
2018-05-20 16:58:19 +01:00