mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-17 10:27:41 +00:00
(cconv-convert): Fix regression
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyze-form): Since we can't always remove the wrapper, make sure the wrapper accepts the expected calling convention (i.e. called with no args).
This commit is contained in:
parent
a98d0daac4
commit
88d5327fe2
1 changed files with 2 additions and 2 deletions
|
|
@ -483,7 +483,7 @@ places where they originally did not directly appear."
|
|||
(bf (if (stringp (car body)) (cdr body) body))
|
||||
(if (when (eq 'interactive (car-safe (car bf)))
|
||||
(gethash form cconv--interactive-form-funs)))
|
||||
(wrapped (pcase if (`#'(lambda (_cconv--dummy) .,_) t) (_ nil)))
|
||||
(wrapped (pcase if (`#'(lambda (&rest _cconv--dummy) .,_) t) (_ nil)))
|
||||
(cif (when if (cconv-convert if env extend)))
|
||||
(_ (pcase cif
|
||||
('nil nil)
|
||||
|
|
@ -747,7 +747,7 @@ This function does not return anything but instead fills the
|
|||
(let ((if (cadr (car bf))))
|
||||
(unless (macroexp-const-p if) ;Optimize this common case.
|
||||
(let ((f (if (eq 'function (car-safe if)) if
|
||||
`#'(lambda (_cconv--dummy) ,if))))
|
||||
`#'(lambda (&rest _cconv--dummy) ,if))))
|
||||
(setf (gethash form cconv--interactive-form-funs) f)
|
||||
(cconv-analyze-form f env))))))
|
||||
(cconv--analyze-function vrs body-forms env form))
|
||||
|
|
|
|||
Loading…
Reference in a new issue