[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/parser-generator bc23604 274/434: Fixed look-ahead, fi
From: |
ELPA Syncer |
Subject: |
[elpa] externals/parser-generator bc23604 274/434: Fixed look-ahead, first and e-free-first with k = 0 |
Date: |
Mon, 29 Nov 2021 15:59:56 -0500 (EST) |
branch: externals/parser-generator
commit bc2360459909f2351f89d57433a4271b25f9d4f1
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Fixed look-ahead, first and e-free-first with k = 0
---
parser-generator-lr.el | 2 +-
parser-generator.el | 14 +++++++++++---
2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/parser-generator-lr.el b/parser-generator-lr.el
index 088a30a..0fa4e2d 100644
--- a/parser-generator-lr.el
+++ b/parser-generator-lr.el
@@ -193,7 +193,7 @@
(unless found-action
(error
"Failed to find any action in set %d: %s"
- lr-item-index
+ goto-index
lr-items))
(setq continue-loop nil)))
(setq lr-item-index (1+ lr-item-index)))))))
diff --git a/parser-generator.el b/parser-generator.el
index b001d80..7df2a6e 100644
--- a/parser-generator.el
+++ b/parser-generator.el
@@ -110,7 +110,9 @@
(let ((terminals
(parser-generator--get-grammar-terminals))
(look-aheads)
- (k parser-generator--look-ahead-number)
+ (k (max
+ 1
+ parser-generator--look-ahead-number))
(stack '((0 0 nil)))
(marked-paths (make-hash-table :test 'equal))
(added-look-aheads (make-hash-table :test 'equal)))
@@ -801,7 +803,10 @@
parser-generator--f-free-sets)
(parser-generator--debug (message "(parser-generator--generate-f-sets)"))
(let ((productions (parser-generator--get-grammar-productions))
- (k parser-generator--look-ahead-number))
+ (k
+ (max
+ 1
+ parser-generator--look-ahead-number)))
(let ((disallow-set '(nil t)))
(parser-generator--debug (message "disallow-set: %s" disallow-set))
(dolist (disallow-e-first disallow-set)
@@ -1339,7 +1344,10 @@
(setq β (list β)))
(unless (parser-generator--valid-sentential-form-p β)
(error "Invalid sentential form β! %s" β))
- (let ((k parser-generator--look-ahead-number))
+ (let ((k
+ (max
+ 1
+ parser-generator--look-ahead-number)))
;; Generate F-sets only once per grammar
(parser-generator--generate-f-sets)
- [elpa] externals/parser-generator 5032a77 233/434: Fixed typo in Lex Analyzer error, (continued)
- [elpa] externals/parser-generator 5032a77 233/434: Fixed typo in Lex Analyzer error, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 07320b9 249/434: Updated test-case k=2, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator d49f74f 244/434: Added failing test for action-tables LRk parser k=2, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator fe05328 250/434: Passed unit tests for LRk parser k=2, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator d1f4682 248/434: Added a function that converts a FIRST-item to a look-ahead item, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 6845262 243/434: Passed GOTO-tables k=2, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 3a0d4cd 255/434: Added translation test for LRk=2, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 03ca2e9 247/434: Look-ahead generation now supports EOF symbol, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 3563720 266/434: Updated docs about lexical analysis, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 412fd2a 273/434: Passing generation of GOTO-table for LR(0) grammar, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator bc23604 274/434: Fixed look-ahead, first and e-free-first with k = 0,
ELPA Syncer <=
- [elpa] externals/parser-generator 1879cb0 271/434: Merge branch 'master' of git.cvj.se:/home/git/emacs-parser-generator, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 16bb2d8 262/434: Added translation example LRk parser, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator d173c1e 281/434: More work on exporting parser as code function, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator bd887ff 277/434: LR(0) Parser passing translation test, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 852f969 283/434: Merge branch 'master' of git.cvj.se:/home/git/emacs-parser-generator, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 0d6d46d 294/434: Debugging incremental issue with exported translator, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator c4c68b2 302/434: Added progress-indicator to goto-table generation, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 586789d 308/434: Added cache to first calculation, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 236a124 322/434: More work on resolving conflicts, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 04c360b 318/434: LR-items set validation now supports symbols with attributes, ELPA Syncer, 2021/11/29