diff options
| author | Stefan Monnier | 2012-07-25 21:27:33 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2012-07-25 21:27:33 -0400 |
| commit | 7abaf5ccc9f11e657b6671e7a6d5a7533bba5f31 (patch) | |
| tree | 26a250aef4c762d2128fb99c7442d01cedbd208b /src/keymap.c | |
| parent | b1364986cb927ca113b0447a66a5274221ad9100 (diff) | |
| download | emacs-7abaf5ccc9f11e657b6671e7a6d5a7533bba5f31.tar.gz emacs-7abaf5ccc9f11e657b6671e7a6d5a7533bba5f31.zip | |
Autoload more carefully from Lisp. Follow aliases for function properties.
* lisp/subr.el (autoloadp): New function.
(symbol-file): Use it.
(function-get): New function.
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Use function-get and
autoload-do-load.
* lisp/emacs-lisp/lisp-mode.el (lisp-font-lock-syntactic-face-function)
(lisp-indent-function):
* lisp/emacs-lisp/gv.el (gv-get):
* lisp/emacs-lisp/edebug.el (get-edebug-spec, edebug-basic-spec):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form):
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
* lisp/emacs-lisp/autoload.el (make-autoload, autoload-print-form):
Use function-get.
* lisp/emacs-lisp/cl.el: Don't propagate function properties any more.
* src/eval.c (Fautoload_do_load): Rename from do_autoload, export to Lisp,
add argument, tune behavior, and adjust all callers.
* lisp/speedbar.el (speedbar-add-localized-speedbar-support):
* lisp/emacs-lisp/disass.el (disassemble-internal):
* lisp/desktop.el (desktop-load-file):
* lisp/help-fns.el (help-function-arglist, find-lisp-object-file-name)
(describe-function-1):
* lisp/emacs-lisp/find-func.el (find-function-noselect):
* lisp/emacs-lisp/elp.el (elp-instrument-function):
* lisp/emacs-lisp/advice.el (ad-has-proper-definition):
* lisp/apropos.el (apropos-safe-documentation, apropos-macrop):
* lisp/emacs-lisp/debug.el (debug-on-entry):
* lisp/emacs-lisp/cl-macs.el (cl-compiler-macroexpand):
* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
* lisp/calc/calc.el (name): Use autoloadp & autoload-do-load.
Diffstat (limited to 'src/keymap.c')
| -rw-r--r-- | src/keymap.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/keymap.c b/src/keymap.c index 510c5ea7f3e..feaf0cfd961 100644 --- a/src/keymap.c +++ b/src/keymap.c | |||
| @@ -225,7 +225,7 @@ when reading a key-sequence to be looked-up in this keymap. */) | |||
| 225 | Fdefine_key should cause keymaps to be autoloaded. | 225 | Fdefine_key should cause keymaps to be autoloaded. |
| 226 | 226 | ||
| 227 | This function can GC when AUTOLOAD is non-zero, because it calls | 227 | This function can GC when AUTOLOAD is non-zero, because it calls |
| 228 | do_autoload which can GC. */ | 228 | Fautoload_do_load which can GC. */ |
| 229 | 229 | ||
| 230 | Lisp_Object | 230 | Lisp_Object |
| 231 | get_keymap (Lisp_Object object, int error_if_not_keymap, int autoload) | 231 | get_keymap (Lisp_Object object, int error_if_not_keymap, int autoload) |
| @@ -259,7 +259,7 @@ get_keymap (Lisp_Object object, int error_if_not_keymap, int autoload) | |||
| 259 | struct gcpro gcpro1, gcpro2; | 259 | struct gcpro gcpro1, gcpro2; |
| 260 | 260 | ||
| 261 | GCPRO2 (tem, object); | 261 | GCPRO2 (tem, object); |
| 262 | do_autoload (tem, object); | 262 | Fautoload_do_load (tem, object, Qnil); |
| 263 | UNGCPRO; | 263 | UNGCPRO; |
| 264 | 264 | ||
| 265 | goto autoload_retry; | 265 | goto autoload_retry; |