Added COMPLETE_PARSE support for Method and Field declarations and cross-references.
Fixed some small ParserSymbolTable bugs.
Added support for linkage specification under COMPLETE_PARSE.
TESTS
Updated CompleteParseASTTests for Method/Field updates.
Fixed TortureTest's parser mode switch (was always QuickParsing).
Added CompleteParse - UsingDirective & UsingDeclarations w/namespace/class/field variable references.
Added CompleteParse support for enumeration specifiers and references in variables & fields.
Stubbed out other Scopes/Declarations for COMPLETE_PARSE mode to allow indexer team to switch over ASAP.
TESTS
Updated CompleteParseASTTests.
highlighting are updated.
- Added support for hex floating point literals.
- Fixed stack overflow problem with string literals concatenation.
- Fixed problem with token pasting in macros.
- This solves PR 39523, 39550, 39552.
Fleshed out basic declarations for FullParse AST.
Fixed Bug 40554 - Fields coming back as Vars
Fixed Bug 40555 - Methods come back as Functions
TESTS
Created CompleteParseASTTest and added it to ParserTestSuite.
Added ISourceElementCallbackDelegate interface for AST constructs to allow the Parser to delegate callback's to the nodes themselves.
Got rid of ParserMode.STRUCTURAL_PARSE for the time being.
Removed org.eclipse.cdt.internal.core.parser.ast.full.
Created org.eclipse.cdt.internal.core.parser.ast.complete.
Updated ParserFactory.createScanner() to force the user to provide a callback and a ParserMode.
Introduced ASTSemanticException for COMPLETE_PARSE mode.
Fleshed out preliminary IASTReference interfaces and added callbacks to ISourceElementRequestor.
Removed acceptElaboratedTypeSpecifier() from ISourceElementRequestor.
TESTS
Updated ParserSymbolTableTests to remove dependencies on parser.ast.full classes.
Updated Parser test suites for updates to ParserFactory.
Removed DeclaratorDuple as it was obsolete.
Fixed offsets in quickParse's IASTTypedefDeclaration implementation.
Fixed Bug 40436 - Fully Qualified Names Needed (for Indexer/Search features)
TESTS
Wrote new tests in QuickParseASTQualifiedNameTest.java and added it to ParserTestSuite's suite.
Removed IParserCallback.
Partially converted DOM to ISourceElementRequestor (requires refactoring of CModelBuilder & StuctureComparator modules in near future).
Completely finished ISourceElementRequestor/IASTFactory work for QuickParse mode.
Added pointer to methods/functions into AST callback structure.
Restructured AST class hierarchy.
Removed the old IParserCallback return Objects from every Parser method.
TESTS
Rewrote the entire DOMTests suite to now be AST tests.
Removed DOMTests, BaseDOMTest, DOMFailedTests after methods were migrated to QuickParseASTTests & ASTFailedTests.
Made sure every parser failed test had a defect number associated with it.
Added support for long long and wide char literals.
Fix for PR 39349 : Scanner fails on long long literals.
Fix for PR 39544 : Scanner fails on wide char literals.
cdtproject file.
- Used to store the data that had been put in the
cdtbuild file for Standard Make projects.
- Cleaned up some of the exception handling in the
StandardBuildManager.
Filled out IASTMethod & IASTFunction & added implementations.
Updated IScanner, clients & implementations to use IScannerInfo.
Finished SimpleDeclaration porting to new architecture, only thing left is templates.
TESTS
Updated IScanner, clients & implementations to use IScannerInfo.
The change logs contain an overview of what has been done to implement a new interface between a build model (any build model)
and clients of the model that need to extract include search paths and defined symbols. For the most part, I have tried to leave the
old build system as unchanged as possible. For example, project properties like the make search path, and whether or not to continue
on build failures are still stored as persistent properties on the project through the CNature (ugh). The new information I have added
is managed by a new build manager on a per-project basis and is associated with a project as a session property. The information is
persisted in the 'cdtbuild' file introduced by the new managed build system.
Further restructuring of Parser for ISourceElementRequestor.
Added interfaces/implementation for Simple Declarations.
Cleaned up DOM's representation of Constructor chains.
TESTS
Added DOMTests::testAssignmentExpression()
Added PreprocessorConditionalTest to ParserTestSuite.
Updated IASTClassSpecifier for qualified name query.
Began structuring expressions and declarators in Parser for ISourceElementRequestor.
Updated other packages to use new interfaces.
Updated automatedtests/torture test to use new line number information.
implemented support for pointers to class members;
added handling of declarations for nested scopes (like A::B::C);
fixed handling of parameter lists for typedefs for functions;
some errorhandling in CModelBuilder;