aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2015-02-18 20:31:17 -0500
committerStefan Monnier2015-02-18 20:31:17 -0500
commit99db66a01fd998942c4e75733863903247345d90 (patch)
tree2a206b3c2fa874529eba9ed769c7daa00f48a17a
parent746d2923d685ff9067ca0a999ac8321dd45d1c43 (diff)
downloademacs-99db66a01fd998942c4e75733863903247345d90.tar.gz
emacs-99db66a01fd998942c4e75733863903247345d90.zip
* lisp/emacs-lisp/smie.el (smie-prec2->grammar): Fix corner case problem.
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/emacs-lisp/smie.el7
2 files changed, 9 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index b71b55d8477..933e5bbb515 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
12015-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * emacs-lisp/smie.el (smie-prec2->grammar): Fix corner case problem.
4
12015-02-18 Kelly Dean <kelly@prtime.org> 52015-02-18 Kelly Dean <kelly@prtime.org>
2 6
3 * register.el (jump-to-register): 7 * register.el (jump-to-register):
diff --git a/lisp/emacs-lisp/smie.el b/lisp/emacs-lisp/smie.el
index 5b9dc6422a2..48bded4e3a6 100644
--- a/lisp/emacs-lisp/smie.el
+++ b/lisp/emacs-lisp/smie.el
@@ -612,8 +612,11 @@ PREC2 is a table as returned by `smie-precs->prec2' or
612 (cons (pcase (cdr x) 612 (cons (pcase (cdr x)
613 (`closer (cddr (assoc token table))) 613 (`closer (cddr (assoc token table)))
614 (`opener (cdr (assoc token table)))))) 614 (`opener (cdr (assoc token table))))))
615 (cl-assert (numberp (car cons))) 615 ;; `cons' can be nil for openers/closers which only contain
616 (setf (car cons) (list (car cons))))) 616 ;; "atomic" elements.
617 (when cons
618 (cl-assert (numberp (car cons)))
619 (setf (car cons) (list (car cons))))))
617 (let ((ca (gethash :smie-closer-alist prec2))) 620 (let ((ca (gethash :smie-closer-alist prec2)))
618 (when ca (push (cons :smie-closer-alist ca) table))) 621 (when ca (push (cons :smie-closer-alist ca) table)))
619 ;; (smie-check-grammar table prec2 'step3) 622 ;; (smie-check-grammar table prec2 'step3)