diff --git a/src/doc/release/bugs.xml b/src/doc/release/bugs.xml
index 50ed3e1..c3a5d11 100644
--- a/src/doc/release/bugs.xml
+++ b/src/doc/release/bugs.xml
@@ -13,6 +13,19 @@
sending a bug report.
+ -
+ Parser: Some grammar ambiguities may go undetected
+ When the last element of an alternative is optional,
+ some ambiguities may go undetected. This is due to not
+ properly comparing the tokens in the optional element with
+ the tokens after the production. The ambiguious grammar
+
A = B ["x"]; B = "y" ["x"];
illustrates this.
+ In some cases this may also lead to parse errors as ambiguities
+ have not been resolved with the appropriate number of look-ahead
+ tokens. This error is present in all versions of Grammatica,
+ but occurs infrequently. (Bug #4117)
+
+
-
Regular Expressions: Not fully JDK 1.4 compatible
The regular expression library is still lacking in some
@@ -20,14 +33,6 @@
The library should be extended to support as many constructs
as possible. (Bug #3597)
-
- -
- Documentation: The C# API is not documented
- The Java API documentation is very similar, but there
- are important differences in name casing and similar. Proper
- C# API documentation in HTML should be generated as part of
- the build process. (Bug #3612)
-
@@ -64,6 +69,17 @@
& C++). (Bug #3600)
+ -
+ Grammar: Production representation should be improved
+ The internal representation of a production makes it
+ hard for several alternatives to share a several left-hand
+ side elements. This may cause inherent ambiguities to be
+ found, as the number of look-ahead tokens needed to separate
+ the alternatives is infinite. If these alternatives could
+ share the first elements, this ambiguity would not require
+ a rewrite of the grammar. (Bug #4322)
+
+
-
Grammar: Identical productions should be unified
Identical syntetic productions are not indentified as
@@ -111,6 +127,16 @@
productions. (Bug #3607)
+ -
+ Parser: Support parsing several files with one instance
+ A single parser instance should be possible to use for
+ parsing several files, something not allowed by the current
+ API. The current solution is ineffective when parsing multiple
+ files through the same parser, as the look-ahead token sets
+ must be calculated again every time a new file is parsed.
+ (Bug #4500)
+
+
-
Analyzer: Allow node values propagating downwards
Improve the analyzer framework to handle node values
@@ -129,6 +155,13 @@
This requires the writing of a C++ runtime library plus
appropriate code generation classes. (Bug #3610)
+
+ -
+ Error Handling: Add file reference in errors
+ The exceptions could be extended with a file location
+ object (a file reference) to simplify the error handling
+ when several files are parsed. (Bug #4180)
+