branch: externals/parser-generator commit ba2bda38da728f39b0666455c5b3dc07b680a68e Author: Christian Johansson <christ...@cvj.se> Commit: Christian Johansson <christ...@cvj.se>
Added use of default conflict resolution flag in action-table generation --- parser-generator-lr.el | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/parser-generator-lr.el b/parser-generator-lr.el index 1f72ae7dd9..f9e210b207 100644 --- a/parser-generator-lr.el +++ b/parser-generator-lr.el @@ -602,12 +602,24 @@ (gethash index-hash-key index-symbols))) - (error - "Reduce/%S conflict for %S in state %S" - (car (cdr conflicted-item)) - u - goto-index - )))) + (if (and + parser-generator-lr--allow-default-conflict-resolution + (equal + 'shift + (car (cdr conflicted-item)))) + (progn + (parser-generator--debug + (message + "Shift takes precedence over reduce by default")) + (setq + skip-symbol + t)) + (error + "Reduce/%S conflict for %S in state %S" + (car (cdr conflicted-item)) + u + goto-index + ))))) (unless (or