summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorAndrea Corallo <akrl@sdf.org>2020-09-13 18:15:32 +0200
committerAndrea Corallo <akrl@sdf.org>2020-09-13 18:53:30 +0200
commit21021e56ad609a459ec117bcfc60b2802176a9a7 (patch)
tree776eaa16d9e36d15f76cc4eac91ce35a59c8d4c7 /lisp/emacs-lisp
parent6a726c5ad711ba5224319c6ff8787127a8289c6d (diff)
downloademacs-21021e56ad609a459ec117bcfc60b2802176a9a7.tar.gz
emacs-21021e56ad609a459ec117bcfc60b2802176a9a7.tar.bz2
emacs-21021e56ad609a459ec117bcfc60b2802176a9a7.zip
* Fix defsbust declare effectiveness introduced by 80d7f710 (Bug#43280).
* lisp/emacs-lisp/byte-run.el (defsubst): Do not add a speed declaration as this breaks a pre existing ones if present but rather calls directly `byte-run--set-speed'.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/byte-run.el11
1 files changed, 5 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el
index 8c16c172bed..df693ab1c83 100644
--- a/lisp/emacs-lisp/byte-run.el
+++ b/lisp/emacs-lisp/byte-run.el
@@ -363,13 +363,12 @@ You don't need this. (See bytecomp.el commentary for more details.)
(or (memq (get name 'byte-optimizer)
'(nil byte-compile-inline-expand))
(error "`%s' is a primitive" name))
+ ;; Never native-compile defsubsts as we need the byte
+ ;; definition in `byte-compile-unfold-bcf' to perform the
+ ;; inlining (Bug#42664).
+ (byte-run--set-speed name nil -1)
`(prog1
- (defun ,name ,arglist
- ;; Never native-compile defsubsts as we need the byte
- ;; definition in `byte-compile-unfold-bcf' to perform the
- ;; inlining (Bug#42664).
- (declare (speed -1))
- ,@body)
+ (defun ,name ,arglist ,@body)
(eval-and-compile
(put ',name 'byte-optimizer 'byte-compile-inline-expand))))