- change ToolChainManager so that when creating the types map for
the first time, make it a LinkedHashMap instead of HashMap so
order of input is preserved (first in = first out)
- fix GCCPathToolChainProvider so that it adds non-tupled gcc
to the ToolChainManger before adding any tupled version
Change-Id: I84602a98dd4949a2f9847d4e72c428cdedd60688
The content provider was overriding the change all the time.
Change-Id: I6d406dd6dc903cd890bfc7f7788d76e4388ff905
(cherry picked from commit d4b3472cc9)
- fix CBuildConfiguration processLine() to call new stripArgs()
method to parse the command arguments into separate argument
strings and recognize quotes
Change-Id: I759fb94600b82a55bf5e7f179e01e1f976ce193f
Changes to ErrorParserManager & implementation of message for legacy
build system.
Change-Id: Iffc34eeae87bbd2810684fc52a9d9bcd4bb47950
Signed-off-by: William Riley <william.riley@renesas.com>
Direct calls to CPPTemplates.createSpecialization() bypass the caching
mechanism, resulting in the violation of invariants such as every
binding being represented by a unique (AST-derived) binding object.
ICPPClassSpecialization.specializeMember() should be used instead.
Change-Id: I10ddb06d087d97cf05c6bed0d9f14a15440b87fe
EvalFunctionCall.fImplicitThis is sometimes redundant in that the
owner evaluation is already stored by one of the arguments. In
such cases, storing the owner separately in fImplicitThis can lead
to exponential complexity in chained method calls.
We resolve the duplication by computing the implicit this from the
function name evaluation instead of storing it where possible.
This was already implemented for cases where the function name
evaluation is an EvalMemberAccess in commit 659ff8c4a7. This
commit extends the approach to cases where the function name
evaluation is an EvalID.
Change-Id: Ic71e81b4692c51ffb8e15b3da9fc2dff1a554f05
In the same vein as commit dff6b3bae3, this commit adds profiles
to trigger the build of the serial port component for the current
architecture, only when the profile is activated.
The serial port makefile is also improved to support building for
ppc64 and ppc64le architectures and to honour CFLAGS and LDFLAGS
that might be set in the environment, such as during RPM build.
I also hooked in the makefile "clean" targets so that invoking
"mvn clean verify" will do the right thing.
This simplifies the build for downstreams building from source
significantly.
Change-Id: Ie8cea95d953b256a1f62b77c76370ed7b3d81cee
Signed-off-by: Mat Booth <mat.booth@redhat.com>
- default environment using EnvironmentReader in
CommandLauncherWrapper class in CommandLauncherManager
if no environment set for wrapper to match behaviour
of CommandLauncher
Change-Id: I71ff37b3d8f2049dc705e97bf28f939ac78bd390
- remove new exposed field from CommandLauncherManager and
add correct @since tags
- create new ICommandLauncherFactory2 interface so that no
additions are made to ICommandLauncherFactory
- add @since tag for ICBuildCommandLauncher interface
- make ContainerCommandLauncherFactory implement the new
ICommandLauncherFactory2 as well as ICommandLauncherFactory
Change-Id: I7bbacb59e284b43e6d142accf59b6ab9df274438
When a subsequent regular (non-friend) declaration of such a class
is indexed, the index binding needs to be marked as being fully
visible to name lookup.
Change-Id: I1a625f93eda1af257a9af50b5c4f115fc9bf6526
- add new ICBuildCommandLauncher interface
- add new defaulted method to ICommandLauncherFactory interface
- add code to look at Build Configuration properties in
ContainerCommandLauncherFactory
- add new methods to CommandLauncherManager and
ContainerCommandLauncher
- add an update dialog call in ContainerTab
- add calls to set and get CBuildConfiguration to
ContainerCommandLauncher
Change-Id: If95fafe592c7ea4580bae1a15d168d1163e132fd
The first patch for bug 527697 made us not instantiate such an
argument, because determinePackSize() would return PACK_SIZE_DEFER.
The motivation for that fix was to avoid sizeof...(T) prematurely
instantiating to a concrete value in cases where T was mapped to
a pack expansion.
This patch reverts the change to determinePackSize() and applies a
different fix for the sizeof...(T), specific to EvalUnaryTypeId.
Change-Id: Idc231aeecb5d50e93dda364c6d2deb08057cc8b6
This avoids expontential complexity when type template arguments inside
an ambiguous name specifier themselves contain ambiguous name specifiers.
The patch also enhances TemplateIdStrategy to allow marking and backing
up to a branch point, and uses this ability in templateArgument().
Change-Id: Ia03e9cd0bc026b02b85edc05ed327cce883d6a59
- fix provided by Christian Walther
- fix createTreeForEntries() method to use addTreeListener() instead
of addPaintListener() to handle resizing
- in TreeListener, define treeExpanded method which uses pack method
for entries column
Change-Id: I28db2059d3e0561ce9e5e52f569409de9aff9a6d
The setting build.proj.ref.configs.enabled=true ensures CDT projects are
not rebuilt if non-related projects are changed. This setting cannot be
changed with product or command line customization, hindering products
which require this behavior.
The reason for this is that ACBuilder, which is asked for the value of
the preference, communicates with the instance scope of preferences.
Product and command line customization, however, are on default scope
level.
With this change, ACBuilder will also ask the default scope when
retrieving the value of the preference.
Change-Id: I09e895ea2a05b677e36fac9eb28f24f1f3bc2877
Signed-off-by: Simeon Andreev <simeon.danailov.andreev@gmail.com>
The special binding type CPPLambdaExpressionParameter is removed.
Instead, a lambda expression parameters's are represented as
regular CPPParameters owned by the closure type's generated
function call operator.
Change-Id: I4afeac90c2595a1f84dfa59f057d0494b64d079c
The pseudo-destructor is represented as a CPPImplicitFunction, computed
lazily and stored by CPPBasicType.
This commit also adds support for alias templates to
CPPTemplates.getTemplateName().
Change-Id: I6774556b2493cb68d32c3007d6ce48c7805595f4
The implementation strategy is as follows:
- Implement an option to find potential matches during an AST
definition search.
- Store names that resolve to ProblemBindings in the index,
as references for the candidate bindings, annotated as being
potential matches.
- Add an option to Index.findNames() to include potential matches.
- Use the added options for the index and AST searches in
OpenDeclarationsJob, prioritizing them accordingly (e.g. exact index
matches take precedence over potential AST matches, but if there
are no exact matches, potential matches from the AST and the index
are combined).
Change-Id: I19f5c58820eb3ec79a31652d69fd5b86acaba115
Previously, we would only try the first base class whose primary
template matched that of the parameter type.
Change-Id: I0511e6a1ba1c7197887ff23bc37b70a2a820eb87
Move Toolchains directly under C/C++ and rename to Core
Build Toolchains. Add a label describing what the toolchains
are for in hope of avoiding confusion with managed build.
Also move Qt into C/C++.
Change-Id: Ia1d76087c65b26562d1001243ea355c7ac32365e
- Add volatile variant for __atomic_clear and __atomic_test_and_set
- Add missing parameters for __builtin_fmax and related
Change-Id: Ib31d1a410b8749f5672d70d7d02ca1dff962c38b
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
The evaluated type of 'decltype(auto)' in combination with const and/or
volatile will be a ProblemType since this is not valid code. The patch
also contains a checker to give the user a visual feedback.
Note: A proposed quick-fix has been removed after a short discussion.
Change-Id: I8760ed0ac28e28529ab30516accac9c0413c87d9
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
When deleting projects then creating them with the same name
the scanner info didn't get cleared up and was reused. We
were deleting these files from the wrong path.
Change-Id: Ieda174b7cfc9690ab51be65e674bda321cb3bc10