diff options
Diffstat (limited to 'lisp/emacs-lisp/byte-opt.el')
-rw-r--r-- | lisp/emacs-lisp/byte-opt.el | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el index 7bfa75dbaaf..1d394511c96 100644 --- a/lisp/emacs-lisp/byte-opt.el +++ b/lisp/emacs-lisp/byte-opt.el @@ -221,9 +221,11 @@ (if (symbolp fn) (byte-compile-inline-expand (cons fn (cdr form))) (if (byte-code-function-p fn) - (cons (list 'lambda (aref fn 0) - (list 'byte-code (aref fn 1) (aref fn 2) (aref fn 3))) - (cdr form)) + (progn + (fetch-bytecode fn) + (cons (list 'lambda (aref fn 0) + (list 'byte-code (aref fn 1) (aref fn 2) (aref fn 3))) + (cdr form))) (if (not (eq (car fn) 'lambda)) (error "%s is not a lambda" name)) (cons fn (cdr form))))))) |