summaryrefslogtreecommitdiff
path: root/src/eval.c
diff options
context:
space:
mode:
authorDan Nicolaescu <dann@ics.uci.edu>2009-10-24 06:32:03 +0000
committerDan Nicolaescu <dann@ics.uci.edu>2009-10-24 06:32:03 +0000
commit905a9ed3923847f0323b5ad6f2e26558336fe9c0 (patch)
tree4cb4582eacfa663d308fc7152e8d0fb277624977 /src/eval.c
parent1dee7c238bf93b8192cbb615f408bed230fefeda (diff)
downloademacs-905a9ed3923847f0323b5ad6f2e26558336fe9c0.tar.gz
* keymap.c (Fmake_sparse_keymap): Purecopy the name.
* eval.c (Fautoload): Purecopy the filename. Simplify. * category.c (Fdefine_category): Purecopy docstring. * international/mule-cmds.el (set-language-info-alist): Purecopy lang-env. (leim-list-header, leim-list-entry-regexp): Change defvars to defconst. (charset): Purecopy the name. (define-char-code-property): Purecopy string arguments. * emacs-lisp/byte-run.el (make-obsolete, make-obsolete-variable): Purecopy string arguments. * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): * ediff-hook.el (menu-bar-ediff-menu): * buff-menu.el (Buffer-menu-mode-map): Purecopy names and tooltips. * bookmark.el (menu-bar-bookmark-map): Add :help and purecopy the name.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/eval.c b/src/eval.c
index 4611731a65e..136b75f756b 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -2096,7 +2096,6 @@ then strings and vectors are not accepted. */)
return Qnil;
}
-/* ARGSUSED */
DEFUN ("autoload", Fautoload, Sautoload, 2, 5, 0,
doc: /* Define FUNCTION to autoload from FILE.
FUNCTION is a symbol; FILE is a file name string to pass to `load'.
@@ -2113,9 +2112,7 @@ this does nothing and returns nil. */)
(function, file, docstring, interactive, type)
Lisp_Object function, file, docstring, interactive, type;
{
-#ifdef NO_ARG_ARRAY
Lisp_Object args[4];
-#endif
CHECK_SYMBOL (function);
CHECK_STRING (file);
@@ -2131,16 +2128,15 @@ this does nothing and returns nil. */)
not useful and else we get loads of them from the loaddefs.el. */
LOADHIST_ATTACH (Fcons (Qautoload, function));
-#ifdef NO_ARG_ARRAY
- args[0] = file;
+ if (NILP (Vpurify_flag))
+ args[0] = file;
+ else
+ args[0] = Fpurecopy (file);
args[1] = docstring;
args[2] = interactive;
args[3] = type;
return Ffset (function, Fcons (Qautoload, Flist (4, &args[0])));
-#else /* NO_ARG_ARRAY */
- return Ffset (function, Fcons (Qautoload, Flist (4, &file)));
-#endif /* not NO_ARG_ARRAY */
}
Lisp_Object