Mercurial > hg > xemacs-beta
comparison lisp/post-gc.el @ 5284:d27c1ee1943b
Make the order of preloaded-file-list more sane.
lisp/ChangeLog addition:
2010-10-12 Aidan Kehoe <kehoea@parhasard.net>
* abbrev.el (fundamental-mode-abbrev-table, global-abbrev-table):
Create both these abbrev tables using the usual
#'define-abbrev-table calls, rather than attempting to
special-case them.
* cl-extra.el: Force cl-macs to be loaded here, if cl-extra.el is
being loaded interpreted. Previously other, later files would
redundantly call (load "cl-macs") when interpreted, it's more
reasonable to do it here, once.
* cmdloop.el (read-quoted-char-radix): Use defcustom here, we
don't have any dump-order dependencies that would prevent that.
* custom.el (eval-when-compile): Don't load cl-macs when
interpreted or when byte-compiling, rely on cl-extra.el in the
former case and the appropriate entry in bytecomp-load-hook in the
latter. Get rid of custom-declare-variable-list, we have no
dump-time dependencies that would require it.
* faces.el (eval-when-compile): Don't load cl-macs when
interpreted or when byte-compiling.
* packages.el: Remove some inaccurate comments.
* post-gc.el (cleanup-simple-finalizers): Use #'delete-if-not
here, now the order of preloaded-file-list has been changed to
make it available.
* subr.el (custom-declare-variable-list): Remove. No need for it.
Also remove a stub define-abbrev-table from this file, given the
current order of preloaded-file-list there's no need for it.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Tue, 12 Oct 2010 21:11:46 +0100 |
parents | 75b8038f720e |
children | b9167d522a9a |
comparison
equal
deleted
inserted
replaced
5283:be436ac36ba4 | 5284:d27c1ee1943b |
---|---|
54 (cons (make-ephemeron object object func) | 54 (cons (make-ephemeron object object func) |
55 simple-finalizer-ephemerons))) | 55 simple-finalizer-ephemerons))) |
56 | 56 |
57 (defun cleanup-simple-finalizers (alist) | 57 (defun cleanup-simple-finalizers (alist) |
58 "Clean up `simple-finalizer-ephemerons'." | 58 "Clean up `simple-finalizer-ephemerons'." |
59 ;; We have to do this by hand because DELETE-IF isn't defined yet. | 59 (and simple-finalizer-ephemerons |
60 (let ((current simple-finalizer-ephemerons) | 60 (setq simple-finalizer-ephemerons |
61 (prev nil)) | 61 (delete-if-not #'ephemeron-ref simple-finalizer-ephemerons)))) |
62 (while (not (null current)) | |
63 (if (not (ephemeron-ref (car current))) | |
64 (if (null prev) | |
65 (setq simple-finalizer-ephemerons (cdr current)) | |
66 (setcdr prev (cdr current))) | |
67 (setq prev current)) | |
68 (setq current (cdr current))))) | |
69 | 62 |
70 (add-hook 'post-gc-hook 'cleanup-simple-finalizers) | 63 (add-hook 'post-gc-hook 'cleanup-simple-finalizers) |