diff options
| author | Stefan Monnier | 2015-01-27 22:41:31 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2015-01-27 22:41:31 -0500 |
| commit | 2668ac1aaecfe62c80a4fbdfc27a38e384594d26 (patch) | |
| tree | f467b3db81d3510c67c01052ca620e6ade7a357d /src | |
| parent | 7f4f16b3ae6fdb59d83cfc01017668f2a564309f (diff) | |
| download | emacs-2668ac1aaecfe62c80a4fbdfc27a38e384594d26.tar.gz emacs-2668ac1aaecfe62c80a4fbdfc27a38e384594d26.zip | |
Tighten up the tagcode used for eieio and cl-struct objects
* lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Set the function
slot of the tag symbol to :quick-object-witness-check.
(eieio-object-p): Use :quick-object-witness-check.
(eieio--generic-tagcode): Use cl--generic-struct-tag.
* lisp/emacs-lisp/cl-preloaded.el: New file.
* lisp/emacs-lisp/cl-macs.el (cl--bind-inits): Remove, unused.
(cl--transform-lambda, cl-destructuring-bind): Remove cl--bind-inits.
(cl--make-usage-args): Strip away &aux args.
(cl-case, cl-typecase, cl--parse-loop-clause): Use macroexp-let2.
(cl-the, cl-check-type): Use macroexp-let2 and cl-typep.
(cl-defstruct): Use `declare' and cl-struct-define.
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): New function.
(cl--generic-struct-tagcode): Use it to tighten the tagcode.
* lisp/loadup.el: Load cl-preloaded.
* src/lisp.mk (lisp): Add cl-preloaded.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/lisp.mk | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 8e5166e22be..e8e216e0e92 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2015-01-28 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * lisp.mk (lisp): Add cl-preloaded. | ||
| 4 | |||
| 1 | 2015-01-27 Paul Eggert <eggert@cs.ucla.edu> | 5 | 2015-01-27 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 6 | ||
| 3 | Use bool for boolean in xfaces.c | 7 | Use bool for boolean in xfaces.c |
diff --git a/src/lisp.mk b/src/lisp.mk index a9deb2b53d9..ee2a07c0fd7 100644 --- a/src/lisp.mk +++ b/src/lisp.mk | |||
| @@ -71,6 +71,7 @@ lisp = \ | |||
| 71 | $(lispsource)/faces.elc \ | 71 | $(lispsource)/faces.elc \ |
| 72 | $(lispsource)/button.elc \ | 72 | $(lispsource)/button.elc \ |
| 73 | $(lispsource)/startup.elc \ | 73 | $(lispsource)/startup.elc \ |
| 74 | $(lispsource)/emacs-lisp/cl-preloaded.elc \ | ||
| 74 | $(lispsource)/emacs-lisp/nadvice.elc \ | 75 | $(lispsource)/emacs-lisp/nadvice.elc \ |
| 75 | $(lispsource)/minibuffer.elc \ | 76 | $(lispsource)/minibuffer.elc \ |
| 76 | $(lispsource)/abbrev.elc \ | 77 | $(lispsource)/abbrev.elc \ |