summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1998-09-04 19:57:32 +0000
committerKarl Heuer <kwzh@gnu.org>1998-09-04 19:57:32 +0000
commit223a2a62985b8bad856872a2cb3ff827f76949fb (patch)
tree000e83c908196173bf85ab103891a04930e85787 /lisp/emacs-lisp
parentcd30a521aa838f6bcf08ee6ffb62986cd2bf8daa (diff)
downloademacs-223a2a62985b8bad856872a2cb3ff827f76949fb.tar.gz
emacs-223a2a62985b8bad856872a2cb3ff827f76949fb.tar.bz2
emacs-223a2a62985b8bad856872a2cb3ff827f76949fb.zip
(byte-compile-inline-expand):
If the function definition is not a lambda, return original FORM with no error.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/byte-opt.el6
1 files changed, 4 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el
index 4cf9548e8fb..a279c018e70 100644
--- a/lisp/emacs-lisp/byte-opt.el
+++ b/lisp/emacs-lisp/byte-opt.el
@@ -278,8 +278,10 @@
(cons (list 'lambda (aref fn 0)
(list 'byte-code string (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)))))))
+ (if (eq (car-safe fn) 'lambda)
+ (cons fn (cdr form))
+ ;; Give up on inlining.
+ form))))))
;;; ((lambda ...) ...)
;;;