Fix (or ...) patterns in 'cond*'/'match*'
This fixes Bug#80121. * lisp/emacs-lisp/cond-star.el (cond*-subpat): Add missing reference to 'expression' when clearing multiple backtrack aliases.
This commit is contained in:
committed by
Eli Zaretskii
parent
0d017fc7ce
commit
a9a03cf35e
@@ -728,7 +728,7 @@ whether SUBPAT (as well as the subpatterns that contain/precede it) matches,"
|
||||
(if (null (cdr clearing))
|
||||
`(or ,expression
|
||||
,(car clearing))
|
||||
`(progn ,@clearing))))))
|
||||
`(or ,expression (progn ,@clearing)))))))
|
||||
(push expression expressions)))
|
||||
;; At end of (or...), EACH variable bound by any arm
|
||||
;; has a backtrack alias gensym. At run time, that gensym's value
|
||||
|
||||
Reference in New Issue
Block a user