[PATCH 12/17] todo: more

Akim Demaille <[email protected]>
Newsgroups gmane.comp.parsers.bison.patches
Message-ID <[email protected]>
---
 TODO | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/TODO b/TODO
index 018247c4..b7221d69 100644
--- a/TODO
+++ b/TODO
@@ -679,6 +679,25 @@ participate in the count.
 Do we want to disallow terminal start symbols?  The limitation is not
 technical.  Can it be useful to someone to "parse" a token?
 
+*** Fix default_reduction_only_for_accept
+In src/lalr.c:
+
+  /* We need a lookahead either to distinguish different reductions
+     (i.e., there are two or more), or to distinguish a reduction from a
+     shift.  Otherwise, it is straightforward, and the state is
+     'consistent'.  However, do not treat a state with any reductions as
+     consistent unless it is the accepting state (because there is never
+     a lookahead token that makes sense there, and so no lookahead token
+     should be read) if the user has otherwise disabled default
+     reductions.  */
+  s->consistent =
+    !(reds->num > 1
+      || (reds->num == 1 && trans->num && TRANSITION_IS_SHIFT (trans, 0))
+      || (reds->num == 1 && reds->rules[0]->number != 0
+          && default_reduction_only_for_accept));
+
+We should have a test for "is accepting rule".
+
 ** %include
 This is a popular demand.  We already made many changes in the parser that
 should make this reasonably easy to implement.
-- 
2.28.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.