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

82 commits

Author SHA1 Message Date
Daniel Pesch
eb5c0c8a55 Bug 425538 - Syntax errors in QML reported as "C/C++ Problems" because errors from Qt Linguist
The problem is solved by allowing to ignore duplicated markers in case
there is already loaded a plugin that could handle QML files

The ProblemMarkerFilter extension point allows to filter out unneeded
problem markers. For example during building of Qt base project with QML
files tool Qt Linguist could report syntax errors in some qml file.
These errors are presented as "C/C++ Problems" in qml files because they
match format CDT expects for errors. If there is already installed plug-in
that handles QML files it is a wise to ignore such errors because they
are already reported as "QML Problems" with more meaningful descriptions.

Change-Id: I3a0a1b58e9690bed9c2774e4328760c695d54a54
Signed-off-by: Daniel Pesch <dpesch@blackberry.com>
Reviewed-on: https://git.eclipse.org/r/20581
Tested-by: Hudson CI
Reviewed-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
2014-01-16 10:46:50 -05:00
Andrew Eidsness
5e130ab883 Bug 422804: Allow contributors to add data to the PDOM
The CDT persists an index of source code relationships by processing the
AST produced by the parser.  There is an existing extension-point that
allows contributors to create new linkages in this persisted file.
However there is no mechanism allowing contributors to influence the
data that is stored to the file.

This introduces a new extension-point allowing contributors to
participate in processing the AST that is being persisted to the index.
The intent is for this to be used to store data into the contributor's
new Linkage.

There is no change in functionality for existing linkages.  A
contributor will soon be added in the Qt plugin.

Change-Id: I845c90cbf7c713e23319e2ed1168eb7d74db5868
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/19089
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
2013-11-29 00:27:15 -05:00
Jesse Weinstein
484c089036 [bug 417138] Various schema cleanups; English grammar fixes; adding translatable, identifier-type, etc.
Change-Id: I1c10b4171bba0f8d64f41970eae1b2971bc53476
Signed-off-by: Jesse Weinstein <Jesse.Weinstein@clinicomp.com>
Reviewed-on: https://git.eclipse.org/r/16395
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
2013-09-12 22:54:21 -04:00
Andrew Gvozdev
da95189bb4 bug 416628: "Export" of entries of language settings providers to referencing projects - added capability 2013-09-08 08:09:10 -04:00
Andrew Gvozdev
ff5cecb5f8 Clarified JavaDoc for LanguageSettingsSerializableProvider. 2013-06-18 10:48:00 -04:00
Andrew Eidsness
2279927623 Bug 400020: Allow tagging of IBindings
This new extension point allows contributors to put their own
information into the PDOM and to later retrieve it for their own
purposes.

There are many details in the bug.  The idea is that contributors
provide an implementation of IBindingTagger, which is given a chance to
examine IBindings when they are created.  The ITagWriter interface
allows the contributor to create a new tag which can then have data
written to it.

The ITagService interface (accessible from CCorePlugin.getTagService()
provides a way for the contributor to later get an instance of
ITagReader to retrieve tags from bindings.

ITags are copied to the PDOM when the associated binding is persisteed.

Contributors use a unique id (based on their plugin id), so that
multiple contributors are able to independently tag a given binding.

In-memory tags are not cached.  I've done some timing tests using my
sample implementation and found no measurable difference.  The full log
lines look like:

	!MESSAGE Indexed 'simple-01' (2 sources, 184 headers) in <see below>
sec: 21,550 declarations; 35,394 references; 0 unresolved inclusions; 1
syntax errors; 0 unresolved names (0.00%)

I did 5 tests using the current master (no tagging-related code), the
times were:
	18.86 sec
	 9.17 sec
	 5.91 sec
	 4.79 sec
	 4.83 sec

And then I ran the same sequence of tests using the code in this
commit:
	18.73 sec
	 9.39 sec
	 6.50 sec
	 4.78 sec
	 5.27 sec

If performance does become a problem, then caching could be introduced
with a new implementation of ITaggableService.  The two problems are
finding a key other than the identity of the IBinding (since IBindings
are re-created often) and properly evicting stale entries when the
binding is no longer valid.

The process of copying tags from an in-memory IBinding to a PDOMBinding,
is a synchronization.  This means that tags that are no longer
applicable, will be removed from the persistent store.

While developing this I found that PDOMBindings are not deleted from the
Database (only the names that reference them are deleted), so there is
no provision for deleting all tags at once.

New database locks are not needed.  By the time the persistent tags are
accessed, higher levels of code have already taken a read or write lock
as appropriate.

There are new unit tests covering the changes to the PDOM.

Change-Id: I8da1bf5eeba7e1fc2ca7ec308ed8e212629986a4
Reviewed-on: https://git.eclipse.org/r/10407
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
Tested-by: Doug Schaefer <dschaefer@qnx.com>
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
2013-02-20 11:27:03 -05:00
Eugene Ostroukhov
fda18aa3a1 Bug 387935 - Codan does not see symbols from pre-built indexes
This change fixes:
	1. Codan no longer shows errors on symbols from pre-built indexes
	2. Mark occurances in the editor no properly recognizes occurances 
	   of the same symbol.

Change-Id: I1f3b347524a89f7a4c11b128f15f8fdcffe2afdf
Reviewed-on: https://git.eclipse.org/r/7388
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
2012-08-24 14:57:15 -04:00
Andrew Gvozdev
2b5e3e6a20 bug 328007: [sd90] Design user interface for new scanner discovery 2012-05-01 23:05:37 -04:00
Alex Ruiz
ba5775f033 Bug 372551. Fixed semantics of ErrorParserManager (e.g.
getErrorParserAvailableIds()) get by removing knowledge of
contexts from internal data structures (introduced in previous change
set).

Change-Id: Ia1ff68841f3b494a209e8cdf45325d640fd74ddf
Reviewed-on: https://git.eclipse.org/r/5656
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
2012-04-25 16:44:50 -04:00
Alex Ruiz
1f83e4aa21 Bug 372551. Codan support for writing checkers that invoke external
tools.

Change-Id: Ia5cfd24d54ec6e67e08f24a367a6bc689ae407d0
Reviewed-on: https://git.eclipse.org/r/5586
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
2012-04-18 15:52:48 -04:00
Doug Schaefer
6fcb52fe97 Add real categories for templates. Organize selection in tree. 2012-01-27 13:41:24 -05:00
Markus Schorn
fa55d3662d Bug 368160: Dependent projects and SDKs. 2012-01-27 11:00:22 +01:00
Andrew Gvozdev
b4230c0fff bug 290631: Added New Scanner Discovery core functionality from branch
sd90 (Not connected to the rest of the code yet)
2012-01-26 15:30:43 -05:00
Sergey Prigogin
9972595fc7 Initial support for non-PDOM index fragments contributed through an
extension.
2011-10-17 18:08:11 -07:00
Markus Schorn
bc53d099c3 Bug 343437: Support for UNC include directories, by Greg Watson. 2011-04-28 14:10:29 +00:00
Chris Recoskie
ff9885b6e4 Bug 133881 - Make refreshing after building optional
Work in progress.
2011-04-21 19:15:20 +00:00
Chris Recoskie
7038788c04 further changes for Bug 291815 - Add an extension point to allow utilities for virtual EFS filesystems 2010-05-25 17:58:41 +00:00
Chris Recoskie
947eedd5bc - Merged changes from cdt_5_0 to HEAD. Too many to mention individually.
- Reworked IFileSystem utility so that now it is noimplement/noextend.  Clients should now extend from concrete class FileSystemUtility instead to better insulate them from future API changes.
- Reworked the resulting concurrency fixes - indexing and scanner discovery now synchronize on the project root as a scheduling rule.  Original HEAD behaviour was to synch on the project's .settings folder for indexing, but that deadlocked with scanner discovery.
- Fixed remote indexing.  Changes on HEAD that deprecated CodeReader broke the ability for remote translation units to provide the path to load the file content from.  Added API to ITranslationUnit for this purpose.
2010-05-11 22:50:20 +00:00
Doug Schaefer
673ce7a0a9 New ScannerInfoProvider extension point allowing providers to be associated with build commands in the project description. 2009-12-08 18:51:56 +00:00
Andrew Gvozdev
cb676ddd09 bug 293572: No schema found for org.eclipse.cdt.core.ScannerInfoProvider/BinaryParser extension points 2009-10-29 16:44:43 +00:00
Andrew Gvozdev
dbbdbd8f95 bug 109139: Generic Error parser
(RegexErrorParser)
2009-09-11 02:09:38 +00:00
James Blackburn
16ad8a3172 Bug 189109 Add ErrorParser extension point schema 2009-06-28 14:03:45 +00:00
Chris Recoskie
6b87d8c5bc RESOLVED - bug 252966: ProjectDescription Storage: It should be possible to extend / override persistence mechanism
https://bugs.eclipse.org/bugs/show_bug.cgi?id=252966
2009-02-03 19:17:38 +00:00
Chris Recoskie
38fb615b8d RESOLVED - bug 252966: ProjectDescription Storage: It should be possible to extend / override persistence mechanism
https://bugs.eclipse.org/bugs/show_bug.cgi?id=252966
2009-01-21 15:51:07 +00:00
Andrew Ferguson
d96259e1bc 201087: apply contributions from James Blackburn 2008-02-22 17:34:43 +00:00
Andrew Ferguson
65ff00c607 Fix documentation, schema fix is contributed by Tim Kelly (Nokia) 2008-02-21 17:19:45 +00:00
Anton Leherbauer
ef7458bcf9 Cleanup obsolete extension points 2008-01-08 11:27:57 +00:00
Andrew Ferguson
9644f4a11e 203553: Merge contributions from Beth Tibbitts 2007-09-18 09:02:04 +00:00
Andrew Ferguson
30f802ec61 201087: add additional description for the templateAssociations extension point 2007-09-17 16:02:16 +00:00
Andrew Ferguson
90b276e9c0 203553: Apply patch plus additional docs improvements on behalf on Beth Tibbitts. Remove unused usageDescription attribute. 2007-09-17 14:17:15 +00:00
Andrew Ferguson
dcb1c0b585 bring list of extension points up to date, change externalized string to string literal for language.exsd as externalized strings don't seem to be supported here 2007-06-21 09:54:00 +00:00
Mikhail Sennikovsky
2f72db3571 1. Schema fixes
2. test tool-chain definition fixes
2007-06-08 10:42:23 +00:00
Chris Recoskie
9c5aa180e8 RESOLVED - bug 186834: [C99 parser] gcc should be the default language
https://bugs.eclipse.org/bugs/show_bug.cgi?id=186834

Patch from Jason Montojo
2007-05-17 16:29:56 +00:00
Mikhail Sennikovsky
13968f3102 patch from Bala Torati with small modifications
1. Fix for [Bug 184449] [Template Engine] It should be possible to press "Finish" on the first wizard page for templates having default values assigned
2. Fix for [Bug 184593] [Template Engine] Need a way to add tool-chain associations to existing templates
3. Fix for [Bug 184455] [Template Engine] NPE in template engine tests
2007-05-10 16:03:53 +00:00
Mikhail Sennikovsky
c5603e5a0e Template Engine submission from Bala Torati (Symbian) with some modifications and bug-fixes (see Bug 160012) 2007-04-26 17:07:39 +00:00
Anton Leherbauer
fb48e813d1 Document language extension point schema 2007-04-24 11:36:40 +00:00
Mikhail Sennikovsky
88d14ca7c4 schema fixes 2007-04-17 11:19:22 +00:00
Mikhail Sennikovsky
cb19d69cff 1. Fix for [Bug 182711] [Project Model] CoreModel.create(IFile) cannot be used in jobs
2. External setting provider mechanism
3. other bug-fixes
2007-04-17 11:14:13 +00:00
Mikhail Sennikovsky
cae9417adf Fix for [Bug 179662] Implement configuration-based scanner discovery in the make.core 2007-04-04 17:52:07 +00:00
Andrew Ferguson
6d88aaec37 167096: check in of new functionality 2007-03-19 16:28:18 +00:00
Andrew Ferguson
2786bd52fb remove comment to self 2007-02-28 15:14:45 +00:00
Andrew Ferguson
df5d491ef2 169668: provide an offline PDOM generation tool 2007-02-28 15:08:41 +00:00
Mikhail Sennikovsky
5fdd70a074 New Project Model initial check-in 2007-02-20 17:23:35 +00:00
Markus Schorn
19ec4b5024 Fix for 108173, basically removes warnings in plugin.xml 2007-02-13 09:39:20 +00:00
Markus Schorn
f5a4ba1d76 Introduces an API to access the PDOM, bug 149565. 2006-10-12 13:23:56 +00:00
Doug Schaefer
487aa70ebc Integrated indexing into PDOM. Also change the names of a couple of things, such as PDOM which used to be PDOMDatabase. Cleaned up the indexing setting so that it is a ProjectScope preference instead of a ICExtension. Conversion should happen automagically. 2006-03-30 21:59:22 +00:00
Doug Schaefer
a9d3047502 Pretty massive update to the PDOM. Made IBindings adaptable. Introducing the Index View. 2005-12-21 21:01:29 +00:00
Doug Schaefer
a39da76e9e Working on getting language and type info into the bindings. Fixed up the name of the pdom.dom package. Pushed IOExceptions as low down as I could. 2005-11-28 04:35:36 +00:00
Doug Schaefer
41d26bc514 Moved the PDOM into the Core. Started introduction of ILanguage, the mechanism of language extensibility for the CDT. 2005-11-25 22:01:48 +00:00
Doug Schaefer
43b6989c8f Introducing the PDOM. It is currently in optional plugins while under development. 2005-09-28 20:50:11 +00:00