From 3e133cc050926284109fe61f4789f67676491ffa Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Tue, 16 Mar 2021 18:56:34 +0100 Subject: [PATCH] Fix `no-byte-compile' native compilation interaction (bug#47169) * lisp/emacs-lisp/comp.el (comp-spill-lap-function): Throw no-native-compile when `byte-native-qualities' are null. * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): No need to consider `no-byte-compile'. --- lisp/emacs-lisp/bytecomp.el | 3 +-- lisp/emacs-lisp/comp.el | 3 ++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 6b874b69167..b04286c34ae 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2277,8 +2277,7 @@ With argument ARG, insert value in current buffer after the form." (push `(comp-native-driver-options . ,comp-native-driver-options) byte-native-qualities) (defvar no-native-compile) - ;; `no-byte-compile' implies also `no-native-compile'. - (push `(no-native-compile . ,(or no-byte-compile no-native-compile)) + (push `(no-native-compile . ,no-native-compile) byte-native-qualities)) ;; Compile the forms from the input buffer. diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index a3a481cd36a..6da1a7979c3 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -1315,7 +1315,8 @@ clashes." (cl-defmethod comp-spill-lap-function ((filename string)) "Byte-compile FILENAME, spilling data from the byte compiler." (byte-compile-file filename) - (when (alist-get 'no-native-compile byte-native-qualities) + (when (or (null byte-native-qualities) + (alist-get 'no-native-compile byte-native-qualities)) (throw 'no-native-compile nil)) (unless byte-to-native-top-level-forms (signal 'native-compiler-error-empty-byte filename)) -- 2.39.2