mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
(macroexp-warn-and-return): Fix bug#53618
* lisp/emacs-lisp/macroexp.el (macroexp-warn-and-return): Reorder arguments to preserve compatibility with that of Emacs-28. (macroexp--unfold-lambda, macroexp--expand-all): * lisp/emacs-lisp/pcase.el (pcase-compile-patterns, pcase--u1): * lisp/emacs-lisp/gv.el (gv-ref): * lisp/emacs-lisp/eieio.el (defclass): * lisp/emacs-lisp/eieio-core.el (eieio-oref, eieio-oref-default) (eieio-oset-default): * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet, cl-defstruct): * lisp/emacs-lisp/cl-generic.el (cl-defmethod): * lisp/emacs-lisp/byte-run.el (defmacro, defun): * lisp/emacs-lisp/bindat.el (bindat--type): Adjust accordingly.
This commit is contained in:
parent
c3e064013e
commit
f262a6af36
10 changed files with 28 additions and 50 deletions
|
|
@ -581,9 +581,7 @@ This is like the `&' operator of the C language.
|
|||
Note: this only works reliably with lexical binding mode, except for very
|
||||
simple PLACEs such as (symbol-function \\='foo) which will also work in dynamic
|
||||
binding mode."
|
||||
(let ((org-place place) ; It's too difficult to determine by inspection whether
|
||||
; the functions modify place.
|
||||
(code
|
||||
(let ((code
|
||||
(gv-letplace (getter setter) place
|
||||
`(cons (lambda () ,getter)
|
||||
(lambda (gv--val) ,(funcall setter 'gv--val))))))
|
||||
|
|
@ -595,9 +593,8 @@ binding mode."
|
|||
(eq (car-safe code) 'cons))
|
||||
code
|
||||
(macroexp-warn-and-return
|
||||
org-place
|
||||
"Use of gv-ref probably requires lexical-binding"
|
||||
code))))
|
||||
code nil nil place))))
|
||||
|
||||
(defsubst gv-deref (ref)
|
||||
"Dereference REF, returning the referenced value.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue