diff options
author | Noam Postavsky <npostavs@gmail.com> | 2017-06-16 07:43:29 -0400 |
---|---|---|
committer | Noam Postavsky <npostavs@gmail.com> | 2017-06-24 10:12:53 -0400 |
commit | c75eb1030fbb606765cc8a5e5ecbab4a9cf435ed (patch) | |
tree | e2fef162f27d40c40f7bb9a8acf928bce0f1c483 /lisp/emacs-lisp | |
parent | 4bd4df40471f42d56e26af9ee62d7a52653ae82a (diff) | |
download | emacs-c75eb1030fbb606765cc8a5e5ecbab4a9cf435ed.tar.gz emacs-c75eb1030fbb606765cc8a5e5ecbab4a9cf435ed.tar.bz2 emacs-c75eb1030fbb606765cc8a5e5ecbab4a9cf435ed.zip |
Don't change byte-compile-delete-errors at runtime (Bug#27340)
* lisp/emacs-lisp/eieio-core.el: Confine `cl-declaim' calls to compile
time.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/eieio-core.el | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el index dfe1c06bfaf..9d618e1dc81 100644 --- a/lisp/emacs-lisp/eieio-core.el +++ b/lisp/emacs-lisp/eieio-core.el @@ -84,7 +84,7 @@ Currently under control of this var: (progn ;; Arrange for field access not to bother checking if the access is indeed ;; made to an eieio--class object. - (cl-declaim (optimize (safety 0))) + (eval-when-compile (cl-declaim (optimize (safety 0)))) (cl-defstruct (eieio--class (:constructor nil) @@ -103,8 +103,12 @@ Currently under control of this var: options ;; storage location of tagged class option ; Stored outright without modifications or stripping ) - ;; Set it back to the default value. - (cl-declaim (optimize (safety 1)))) + ;; Set it back to the default value. NOTE: Using the default + ;; `safety' value does NOT give the default + ;; `byte-compile-delete-errors' value. Therefore limit this (and + ;; the above `cl-declaim') to compile time so that we don't affect + ;; code which only loads this library. + (eval-when-compile (cl-declaim (optimize (safety 1))))) (eval-and-compile |