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
core:
- modify CSearchPattern.scanForNames to use same naming convention as
TokenDuple.toString()
- modify MatchLocator.report to use
IASTOffsetableNamedElement.getNameEndOffset()
core.tests:
- added testBug43062 and testConstructorDestructor to
FunctionMethodPatternTests
- modified resources/search/classDecl.cpp & include.h to include more
operators and a constructor
I have documented the patch in the change log; the only bonus is that it
fixes 43214 for free. The managed builder should now respond correctly to
deletions of any types of file in the project (or referenced projects).
This includes makefiles, intermediate files, and the build target. It
should also properly handle changes in the project settings in any
referenced project. Referenced projects should now get their project views
refreshed as a result of any changes.
Here's a patch that simplifies how workspace scopes are built - instead of getting info from the CModelManager, we go straight to the workspace. This will improve shutdown/search performance.
Core:
- fixed bug 43834 : Empty Parameter list and parameter list taking one
void do not match
- fix NPE if IScannerInfoProvider returns null IScannerInfo
Tests:
- added testbug43834 to ParserSymbolTableTest
Continued work on Bug 43062 : Outline is confused on operator methods containing spaces
Partial fix for Bug 43680 : Fix Parser Error Handling
TEST
Added testErrorHandling_1() to CompleteParseASTTest.java.
This is a fix for the bug 41275. The problem was pretty simple; the delta
passed to a project when one of the projects it depends on changes, is
empty. I tried to optimize the managed builder to run only when a change
was passed to it, but this is a valid case. Now, if there is a 0-length
delta passed to a project, it simply calls make without regenerating any
makefiles.
Two of the fixes, 43614 and 43756, involved changing property files only,
which validates the extra work of externalizing strings from the start!
For 43616, I simply took the advice of the bug reporter and added the '-'
in front of the RM macro in the clean target and the include directives in
the makefile.
The largest part of the fix involves 43220. Until just now, this was a
critical bug in bugzilla, so I addressed it. It has just been downgraded
to an enhancement request. There is now a new entry widget in the linker
options for user objects. The makefile will simply add these to the final
build target's command. Most of the work was done in the plugin file and
the build model to handle the new "type" of option.
Fixed Bug 43644 : 6 triangle icons appearing in outline viewer when typing an error
Fixed Bug 43062 : Outline is confused on operator methods containing spaces
Fixed Bug 39531 : Problems with type conversion operators
TEST
Added QuickParseASTTests::testBug43644() & testBug43062().
Moved ASTFailedTests::testBug39531() to QuickParseASTTests.
This patch integrates the dependency calculator into
the indexer. As a result the underlying indexer file storage
format has changes. Lots of detail in the change logs of
exactly what changed...
UI:
Solution to :
bug#43149: Code Assist Preferences: Background Color not working....
bug#43153: Code Assist Preferences: Disabling "Insert single proposa...
bug#43154: Code Assist Preferences: Enable Auto activation not working
bug#42224: Code Assist preferences Do not work properly
the new project wizard now filters out targets that should
not be selected by the user, and that the build model
handles inherited option references properly now.
partial fix for bug 43664 - Search cannot report matches outside of
workspace.
This enables non-ui reporting of matches outside the workspace. So
clients of search, like code assist will get external results.
We still need a resource to report a match to the search view so no
external matches in the UI.
core:
Modify Matchlocator to not try and create a link if we have no resource,
instead just use the path
core.tests:
added testNoResourceSearching() to OtherPatternTests
ui:
modify CSearchResultCollector to accept matches without resources, but not
attempt to report
them in the UI.
* src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java
Core:
- Last part of solution to bug#42453: Expression result types not computed
Added the handling of POSTFIX_TYPENAME_IDENTIFIER
Completed bug#43221: POSTFIX_TYPENAME_IDENTIFIER not implemented
- Solution to bug#43644 : 6 triangle icons appearing in outline viewer when typing ...
Tests:
Enabled CompleteParseASTExpressionTest.testPostfixTypenameIdentifier()
UI:
Solution to bug#43646: Code Assist won't work if missing end bracket
Core:
Partial solution to bug#42453: Expression result types not computed
Added the handling of the NEW_TYPEID, CASTEXPRESSION, POSTFIX_DYNAMIC_CAST,
POSTFIX_REINTERPRET_CAST, POSTFIX_STATIC_CAST, and POSTFIX_CONST_CAST
Tests:
Added testNewTypeId(), testCastExpression(), testPostfixDynamicCast(),
testPostfixReinterpretCast(), testPostfixStaticCast(), and testPostfixConstCast()
to CompleteParseASTExpressionTest.