[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scratch/no-purespace 40faf3ededc 18/41: Purecopy removal: Lisp code
From: |
Stefan Kangas |
Subject: |
scratch/no-purespace 40faf3ededc 18/41: Purecopy removal: Lisp code |
Date: |
Tue, 10 Dec 2024 19:09:38 -0500 (EST) |
branch: scratch/no-purespace
commit 40faf3ededcb5fac9c843d074aeaf6e0e29d914b
Author: Pip Cet <pipcet@protonmail.com>
Commit: Stefan Kangas <stefankangas@gmail.com>
Purecopy removal: Lisp code
* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table): Don't
request our hash tables be purecopied. Adjust comment.
* lisp/progmodes/elisp-mode.el (elisp--local-variables-completion-table):
Use 'defconst' rather than 'defvar' now the purespace problem is gone
* lisp/rfn-eshadow.el (file-name-shadow-properties): Remove obsolete
comment.
---
lisp/emacs-lisp/bytecomp.el | 3 +--
lisp/progmodes/elisp-mode.el | 6 +-----
lisp/rfn-eshadow.el | 1 -
3 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index f058fc48cc7..11f2ffa6063 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -4640,13 +4640,12 @@ Return (TAIL VAR TEST CASES), where:
cases))))
(setq jump-table (make-hash-table
:test test
- :purecopy t
:size nvalues)))
(setq default-tag (byte-compile-make-tag))
;; The structure of byte-switch code:
;;
;; varref var
- ;; constant #s(hash-table purecopy t data (val1 (TAG1) val2 (TAG2)))
+ ;; constant #s(hash-table data (val1 (TAG1) val2 (TAG2)))
;; switch
;; goto DEFAULT-TAG
;; TAG1
diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el
index 2b6d9d2b8bb..c24a1f4672b 100644
--- a/lisp/progmodes/elisp-mode.el
+++ b/lisp/progmodes/elisp-mode.el
@@ -489,11 +489,7 @@ use of `macroexpand-all' as a way to find the \"underlying
raw code\".")
var))
vars))))))
-(defvar elisp--local-variables-completion-table
- ;; Use `defvar' rather than `defconst' since defconst would purecopy this
- ;; value, which would doubly fail: it would fail because purecopy can't
- ;; handle the recursive bytecode object, and it would fail because it would
- ;; move `lastpos' and `lastvars' to pure space where they'd be immutable!
+(defconst elisp--local-variables-completion-table
(let ((lastpos nil) (lastvars nil))
(letrec ((hookfun (lambda ()
(setq lastpos nil)
diff --git a/lisp/rfn-eshadow.el b/lisp/rfn-eshadow.el
index 5cf483bf0b1..c1e0e3da22b 100644
--- a/lisp/rfn-eshadow.el
+++ b/lisp/rfn-eshadow.el
@@ -92,7 +92,6 @@
(sexp :tag "Value")))))
(defcustom file-name-shadow-properties
- ;; FIXME: should we purecopy this?
'(face file-name-shadow field shadow)
"Properties given to the `shadowed' part of a filename in the minibuffer.
Only used when `file-name-shadow-mode' is active.
- scratch/no-purespace e660ac8ce4d 19/41: Make bindings--define-key obsolete, (continued)
- scratch/no-purespace e660ac8ce4d 19/41: Make bindings--define-key obsolete, Stefan Kangas, 2024/12/10
- scratch/no-purespace c6870a14a3f 24/41: Don't call purecopy in common-win.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace e29294f7696 28/41: Don't call purecopy in help-mode.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 31c052c7ce9 32/41: Don't call purecopy in mouse.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 4af70b2fafd 15/41: Don't recognize "bootstrap" option for --temacs, Stefan Kangas, 2024/12/10
- scratch/no-purespace 5b792477252 04/41: Unexec removal: Adjust and simplify W32-specific code, Stefan Kangas, 2024/12/10
- scratch/no-purespace 1c10c259483 11/41: Pure storage removal: Adjust nativecomp code, Stefan Kangas, 2024/12/10
- scratch/no-purespace 52c8a7e3dd8 03/41: Unexec removal: Remove HYBRID_MALLOC support, Stefan Kangas, 2024/12/10
- scratch/no-purespace 42664427fbf 14/41: Pure storage removal: Documentation, Stefan Kangas, 2024/12/10
- scratch/no-purespace 63a8d3cb70f 09/41: Pure storage removal: Remove purecopy hash table flag, Stefan Kangas, 2024/12/10
- scratch/no-purespace 40faf3ededc 18/41: Purecopy removal: Lisp code,
Stefan Kangas <=
- scratch/no-purespace 49a674f44ae 21/41: Avoid compiler warning in process_mark_stack, Stefan Kangas, 2024/12/10
- scratch/no-purespace 4154dd74b90 31/41: Don't call purecopy in emacs-lisp/*.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 9e6f9030e03 25/41: Don't call purecopy in bindings.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 4e695acf2c8 23/41: Don't call purecopy in international/*.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 3ccd53e80b5 22/41: Remove purecopy calls from files.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 67ed43ae5c7 26/41: Don't call purecopy in progmodes/*.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace b608b0de93f 29/41: Don't call purecopy in vc/*.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace e852289e212 36/41: Remove unused function my_heap_start, Stefan Kangas, 2024/12/10
- scratch/no-purespace 6a52471cb50 27/41: Don't call purecopy in textmodes/*.el, Stefan Kangas, 2024/12/10
- scratch/no-purespace 8b8af6ac540 35/41: Remove check for working malloc_set_state, Stefan Kangas, 2024/12/10