summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2019-06-21 10:30:50 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2019-06-21 10:30:50 -0400
commit436ccc6967146e5fbcf7a27a90fb44d0452cb901 (patch)
tree0579a3bcf627661a4cedf9aa69e2d73508263ec7
parent869cf5cbc0721bbe9e4df557f4ed3633fb13c05f (diff)
downloademacs-436ccc6967146e5fbcf7a27a90fb44d0452cb901.tar.gz
* lisp/emacs-lisp/bytecomp.el (byte-compile-dynamic): Mark obsolete
See bug#11649 for an example problem, and emacs-devel discussion «Prickliness of the "invalid byte code" stuff». * lisp/wid-edit.el, lisp/wdired.el, lisp/vc/pcvs-util.el: * lisp/progmodes/executable.el, lisp/mail/sendmail.el: * lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el: * lisp/emacs-lisp/cl-lib.el, lisp/emacs-lisp/cl-extra.el: * lisp/dired-x.el, lisp/dired-aux.el, lisp/calendar/calendar.el: Don't use byte-compile-dynamic any more.
-rw-r--r--etc/NEWS6
-rw-r--r--lisp/calendar/calendar.el7
-rw-r--r--lisp/dired-aux.el1
-rw-r--r--lisp/dired-x.el1
-rw-r--r--lisp/emacs-lisp/bytecomp.el3
-rw-r--r--lisp/emacs-lisp/cl-extra.el1
-rw-r--r--lisp/emacs-lisp/cl-lib.el4
-rw-r--r--lisp/emacs-lisp/cl-macs.el1
-rw-r--r--lisp/emacs-lisp/cl-seq.el1
-rw-r--r--lisp/mail/sendmail.el5
-rw-r--r--lisp/progmodes/executable.el2
-rw-r--r--lisp/vc/pcvs-util.el2
-rw-r--r--lisp/wdired.el5
-rw-r--r--lisp/wid-edit.el2
14 files changed, 12 insertions, 29 deletions
diff --git a/etc/NEWS b/etc/NEWS
index f880e393c02..fabf5a3341b 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -472,6 +472,12 @@ current and the previous or the next line, as before.
* Changes in Specialized Modes and Packages in Emacs 27.1
+** byte compiler
+*** byte-compile-dynamic is now obsolete
+This is because on the one hand it suffers from various misbehaviors in corner
+cases that have plagued it for years, and on the other experiments indicated
+that it doesn't bring any measurable benefit.
+
** compile.el
---
*** In 'compilation-error-regexp-alist', 'line' (and 'end-line') can
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 2baa01f9d5a..1e988c2712f 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -212,8 +212,7 @@ update the calendar display to reflect the change, otherwise
movement commands will not work correctly."
:type 'integer
;; Change the initialize so that if you reload calendar.el, it will not
- ;; cause a redraw (which may fail, e.g. with "invalid byte-code in
- ;; calendar.elc" because of the "byte-compile-dynamic").
+ ;; cause a redraw.
:initialize 'custom-initialize-default
:set (lambda (sym val)
(set sym val)
@@ -2666,8 +2665,4 @@ If called by a mouse-event, pops up a menu with the result."
(provide 'calendar)
-;; Local variables:
-;; byte-compile-dynamic: t
-;; End:
-
;;; calendar.el ends here
diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el
index 41fcd062fb8..2705c0ad2a3 100644
--- a/lisp/dired-aux.el
+++ b/lisp/dired-aux.el
@@ -2959,7 +2959,6 @@ instead."
(provide 'dired-aux)
;; Local Variables:
-;; byte-compile-dynamic: t
;; generated-autoload-file: "dired-loaddefs.el"
;; End:
diff --git a/lisp/dired-x.el b/lisp/dired-x.el
index 3b78ec47d93..b7ec41aa95f 100644
--- a/lisp/dired-x.el
+++ b/lisp/dired-x.el
@@ -1598,7 +1598,6 @@ If `current-prefix-arg' is non-nil, uses name at point as guess."
(provide 'dired-x)
;; Local Variables:
-;; byte-compile-dynamic: t
;; generated-autoload-file: "dired-loaddefs.el"
;; End:
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index b7351481106..431525431a4 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -240,6 +240,7 @@ For example, add -*-byte-compile-dynamic: t;-*- on the first line.
When this option is true, if you load the compiled file and then move it,
the functions you loaded will not be able to run.")
+(make-obsolete-variable 'byte-compile-dynamic "not worthwhile any more." "27.1")
;;;###autoload(put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
(defvar byte-compile-disable-print-circle nil
@@ -1031,7 +1032,7 @@ If STR is something like \"Buffer foo.el\", return #<buffer foo.el>
str))
(defconst emacs-lisp-compilation-parse-errors-filename-function
- 'emacs-lisp-compilation-file-name-or-buffer
+ #'emacs-lisp-compilation-file-name-or-buffer
"The value for `compilation-parse-errors-filename-function' for when
we go into emacs-lisp-compilation-mode.")
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el
index a2400a0ba37..90533295b68 100644
--- a/lisp/emacs-lisp/cl-extra.el
+++ b/lisp/emacs-lisp/cl-extra.el
@@ -938,7 +938,6 @@ Outputs to the current buffer."
(run-hooks 'cl-extra-load-hook)
;; Local variables:
-;; byte-compile-dynamic: t
;; generated-autoload-file: "cl-loaddefs.el"
;; End:
diff --git a/lisp/emacs-lisp/cl-lib.el b/lisp/emacs-lisp/cl-lib.el
index 3a9280fae62..f014f8e0104 100644
--- a/lisp/emacs-lisp/cl-lib.el
+++ b/lisp/emacs-lisp/cl-lib.el
@@ -660,8 +660,4 @@ of record objects."
(t
(advice-remove 'type-of #'cl--old-struct-type-of))))
-;; Local variables:
-;; byte-compile-dynamic: t
-;; End:
-
;;; cl-lib.el ends here
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 24e79acfa55..7e11dd2e4aa 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -3397,7 +3397,6 @@ STRUCT and SLOT-NAME are symbols. INST is a structure instance."
(run-hooks 'cl-macs-load-hook)
;; Local variables:
-;; byte-compile-dynamic: t
;; generated-autoload-file: "cl-loaddefs.el"
;; End:
diff --git a/lisp/emacs-lisp/cl-seq.el b/lisp/emacs-lisp/cl-seq.el
index 87c02a6b54f..a15c994bc1a 100644
--- a/lisp/emacs-lisp/cl-seq.el
+++ b/lisp/emacs-lisp/cl-seq.el
@@ -1038,7 +1038,6 @@ Atoms are compared by `eql'; cons cells are compared recursively.
(run-hooks 'cl-seq-load-hook)
;; Local variables:
-;; byte-compile-dynamic: t
;; generated-autoload-file: "cl-loaddefs.el"
;; End:
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index 208ebb68017..291efab961e 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -2078,9 +2078,4 @@ you can move to one of them and type C-c C-c to recover that one."
;; Do not add anything but external entries on this page.
(provide 'sendmail)
-
-;; Local Variables:
-;; byte-compile-dynamic: t
-;; End:
-
;;; sendmail.el ends here
diff --git a/lisp/progmodes/executable.el b/lisp/progmodes/executable.el
index d7985a7c87a..8d206c38413 100644
--- a/lisp/progmodes/executable.el
+++ b/lisp/progmodes/executable.el
@@ -1,4 +1,4 @@
-;;; executable.el --- base functionality for executable interpreter scripts -*- byte-compile-dynamic: t -*-
+;;; executable.el --- base functionality for executable interpreter scripts
;; Copyright (C) 1994-1996, 2000-2019 Free Software Foundation, Inc.
diff --git a/lisp/vc/pcvs-util.el b/lisp/vc/pcvs-util.el
index 55da04ff40a..5a50393d622 100644
--- a/lisp/vc/pcvs-util.el
+++ b/lisp/vc/pcvs-util.el
@@ -1,4 +1,4 @@
-;;; pcvs-util.el --- utility functions for PCL-CVS -*- byte-compile-dynamic: t -*-
+;;; pcvs-util.el --- utility functions for PCL-CVS
;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
diff --git a/lisp/wdired.el b/lisp/wdired.el
index d2a298bd25b..b52da777533 100644
--- a/lisp/wdired.el
+++ b/lisp/wdired.el
@@ -913,9 +913,4 @@ Like original function but it skips read-only words."
(cons changes errors)))
(provide 'wdired)
-
-;; Local Variables:
-;; byte-compile-dynamic: t
-;; End:
-
;;; wdired.el ends here
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 382eeb8925d..d6f42dab8c4 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -1,4 +1,4 @@
-;;; wid-edit.el --- Functions for creating and using widgets -*-byte-compile-dynamic: t; lexical-binding:t -*-
+;;; wid-edit.el --- Functions for creating and using widgets -*- lexical-binding:t -*-
;;
;; Copyright (C) 1996-1997, 1999-2019 Free Software Foundation, Inc.
;;