Infinite loop in syntax parsing

This test data puts the parser in an infinite loop.   class A { void M() { void a1; } }   The keyword "void" is not legal as the type of a local variable, which is correctly detected, but the pars...

Id #15436 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Dec 15, 2009 at 8:55 AM by vizu

Resolve interface name in reflected explicitly implemented interface members

See eg. MetadataImporterSemanticEntityFactory.CreatePropertyEntity. Interface name not resolved because it's not trivial. (Possible namespaces, type arguments, array dimensions, pointer, etc.) Some...

Id #14248 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Sep 24, 2009 at 2:55 PM by vizu

Rethink lazy importing of reflected members

Members of reflected types are imported in a lazy load fashion to avoid expensive and unnecessary operations. So the semantic graph visitors will not touch those member nodes. Can it cause a problem?

Id #14243 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Sep 24, 2009 at 9:34 AM by vizu

Fluent interface for AST and SG

It would be nice to have a fluent-style interface for AST and SG creation, which also prohibits the creation of ill-structured ASTs and SGs.

Id #13929 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Aug 20, 2009 at 11:13 AM by vizu

Revise TypeNode usage in AST nodes (is NamespaceOrTypeNameNode more appropriate?)

The spec makes a distinction between "type" and "type-name". Type can be a simple type-name too, but can also be a constructed type like int*[]. Previously all type and type-name instances were rep...

Id #13916 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Aug 19, 2009 at 1:39 PM by vizu

Rethink package structure (break circular dependencies)

There are many problems with the package structure. Circular dependencies (AST<->SG, SG<->SGBuilder, etc.) Some namespaces contain too many types and should be split into multiple (sub)namespaces...

Id #13679 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Jul 20, 2009 at 8:29 PM by vizu

Resolve all Coco warnings

Coco gives a number of warnings (LL1 conflicts and misplaced resolvers). All warnings should be investigated and either eliminated or explicitly marked as safe.

Id #13559 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by vizu | Created: Jun 29, 2009 at 10:01 AM by vizu

Handling EndLine and EndPosition

The LanguageElement class should be able to handle the last position (Line, column and file position) of the related language element.

Id #6750 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by INovak | Created: Sep 17, 2007 at 1:30 PM by INovak

Process '#pragma warning'

Right now the compiler specific #pragma is not precessed. It has two options: '#pragma warning' and '#pragma checksum'. The first option should be processed.

Id #3164 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by INovak | Created: Jul 18, 2007 at 1:48 PM by INovak

Handle #region correctly.

Right now the parser simply skips the #region pragma. In the future it should be handled correctly with the same semantics as the C# compiler does it.

Id #2076 | Release: None | Updated: Feb 13, 2013 at 11:36 PM by INovak | Created: Jun 21, 2007 at 9:41 AM by INovak