From: Andrea Corallo Date: Mon, 4 Nov 2019 21:13:20 +0000 (+0100) Subject: fix function top_level_run generation X-Git-Tag: emacs-28.0.90~2727^2~1039 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a2ed435e3aa18c0e6d4997cbb9a81426c952a622;p=emacs.git fix function top_level_run generation --- diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index 381d72e3dc3..b5e9dfb3841 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -1047,14 +1047,10 @@ the annotation emission." (make-comp-mvar :constant doc))))) (cl-defmethod comp-emit-for-top-level ((form byte-to-native-top-level)) - (let* ((form (byte-to-native-top-level-form form)) - (func-name (car form)) - (args (cdr form))) - (if (eq 'unevalled (cdr (subr-arity (symbol-function func-name)))) - (comp-emit (comp-call func-name (make-comp-mvar :constant args))) - (comp-emit (apply #'comp-call func-name - (mapcar (lambda (x) (make-comp-mvar :constant x)) - args)))))) + (let ((form (byte-to-native-top-level-form form))) + (comp-emit (comp-call 'eval + (make-comp-mvar :constant form) + (make-comp-mvar :constant t))))) (defun comp-limplify-top-level () "Create a limple function doing the business for top level forms.