- Moved off all dependency calculations to the Indexer thread,
created a new UpdateDependency job
- Modified CSearchOperation to only lock the workspace
when tagging resources with markers.
Fixed Bug 39542 : Parser fails on 'struct' parameter types
Fixed Bug 39549 : Designated initializers are not supported (ANSI C99)
Fixed Bug 39551 : Complex and imaginary numbers are not supported (ANSI C99)
Fixed Bug 45476 : preprocessor macro "defined" not handled correctly
Fixed Bug 45477 : macro redefines prevent further parsing
TESTS
Added testBug45476() to ScannerTestCase.
Added testBug45477() to ScannerTestCase.
Moved testBug39542() from ASTFailedTests to QuickParseASTTests.
Moved testBug39549() from ASTFailedTests to QuickParseASTTests.
Added testCDesignatedInitializers() to CompleteParseASTTests.
Moved testBug39551A() from ASTFailedTests to QuickParseASTTests.
Moved testBug39551B() from ASTFailedTests to QuickParseASTTests.
Added testCBool() to QuickParseASTTests.
Added testBug39551A(), testBug39551B() and testCBool to CompleteParseTests.
Fixed Bug 40007 : Parser reports success when it fails
Fixed Bug 44305 : Scanner/preprocessor fails on conditionals using hexidecimal
Fixed Bug 41935 : parser provides wrong name on namespace aliases
Fixed Bug 39525 : Parser fails on expressions that take address of overloaded operators
Fixed Bug 45287 : Scanner does not accept character sequence literals
Fixed Bug 36550 : Error recovery with unterminated string is weak
Fixed Bug 41063 : Remove unused K&R C support from ANSI Parser
Fixed Bug 39528 : Function try-blocks are not supported by the parser (ANSI C++)
Fixed Bug 39538 : Parser fails on explicit instantiation of templated operators
Fixed Bug 39536 : Parser fails on templated constructors/conversion operators
Refactored Scanner to make it easier to debug.
TESTS
Moved testBug40007() from ASTFailedTests to QuickParseASTTests.
Added QuickParseASTTests::testBug40759().
Added QuickParseASTTests::testBug44633().
Added ScannerTestCase::testBug44305().
Added QuickParseASTTests::testBug41935().
Moved testBug39525() from ASTFailedTests to QuickParseASTTests.
Added ScannerTestCase::testBug45287().
Moved testBug39528() from ASTFailedTests to QuickParseASTTests.
Moved testBug39538() from ASTFailedTests to QuickParseASTTests.
Added QuickParseASTTests::testBug39536().
Moved testBug39536A() from ASTFailedTests to QuickParseASTTests.
Moved testBug39536B() from ASTFailedTests to QuickParseASTTests.
- Add in option (which is turned on by default) to limit the
scope of the code assist search to the file and it's inclusions
as opposed to the entire project.
Sprout from master 2003-10-02 02:56:46 UTC Doug Schaefer <doug.schaefer@windriver.com> 'Patch for Sean Evoy:'
Cherrypick from master 2003-10-06 21:33:42 UTC Mikhail Khodjaiants <mikhailkhod@googlemail.com> 'Added transparency.':
debug/org.eclipse.cdt.debug.ui/icons/full/ovr16/argument_ovr.gif
debug/org.eclipse.cdt.debug.ui/icons/full/ovr16/castarray_ovr.gif
debug/org.eclipse.cdt.debug.ui/icons/full/ovr16/casttype_ovr.gif
This patch:
- changes the indexer to use whatever source/header extensions are defined in CModelManager
- updated the search shortcut so that Ctrl + H will bring up the C/C++ search in a source/header extension file
- flushes the CDT log file after each index merge (ie. each time the indexer completes an index)
core:
PST changes:
- modify lookupConstructor to copy the constructor list before resolving
on it
- modify checkUserDefinedConversionSequence the same way
- modify isValidFunctionOverload to check for forward declarations
core.tests:
- added testBug43951 to CompleteParseASTTest
Search filtering was broken, it would have become more obvious when
searching larger projects with includes.
core:
-modify BasicSearchMatch.equals()
tests:
modified OtherPatternTests.testBug42911() and renamed it
testBug42911_43988
Bug 43450 - Path strings containing backslashes need quoting by hand
The user needs to input strings in whatever manner necessary for their
build tools to work. If that means quoting them, then quote them.
However, if the user does quote them, then the scanner needs to handle
that when looking for include files:
core:
-modify Scanner.handleInclusion
core.tests:
- added testBug43450 to ManagedBuildTests.java
- added a user include to plugin.xml
the logic for managing the makefiles in the face of a header file
modification. There seems to be a problem (maybe with the dependency
calculation) for dependants in other projects when a header file is moved,
but other than that the builder seems to respond properly.
Here's a patch that creates and manages a CDT log file in the .metadata\.plugins\org.eclipse.cdt.core folder. This log file, for now, will contain indexer failure messages and parser failure messages - particularly inclusion failures. These messages were being logged to the PDE error log which, given the number of failures that we can expect on some files, was filling up rather quickly. I put a 5MB limit on the CDT log file after which it gets deleted and a new one gets created. The intent of this log file is to help a user figure out why something isn't being indexed properly - the usual reasons are: i) can't find an include file, ii) symbols not defined.
Also in this patch are 2 minor UI fixes: i) dedicated to Brent - Ctrl+H now brings up the C++ Search Dialog for all C Editor supported extensions, and ii) especially for Alain - F3 will perform a Open Declarations.
Core:
-fix bug43862 - Cannot find macro delcarations using all occurences.
* modified CSearchPattern.createMacroPattern()
Core.tests:
Updated OtherPatternTests::testMacroPattern() to test for bug43862
Core:
PST changes for bug 43503 - parser needs to know the different between
ambiguous functions
and no functions when no parameter information is provided
- throw r_UnableToResolveFunction if we have more than 1 function
and no parameter info was given
- handle this case in addUsingDeclaration.
* note that r_UnableToResolveFunction doesn't necessarily mean
ambiguous if we had enough information
Core.Tests:
added testBug43503_AmbiguousUsing() and
testBug43503_UnableToResolveFunction() to ParserSymbolTableTest
Core:
-bug42911 - Search: cannot find beyond use of data member
- fix NPE's in BasicSearchMatch.equals & hashCode
TESTS:
-added testBug42911 to OtherPatternTests