diff options
author | Stefan Monnier <[email protected]> | 2011-03-13 18:31:49 -0400 |
---|---|---|
committer | Stefan Monnier <[email protected]> | 2011-03-13 18:31:49 -0400 |
commit | 23aba0ea0e4922cfd8534f43667d3a758f2d2974 (patch) | |
tree | 798c1de793ca32e93da9edac4705bcdb93aeecc7 /src/doc.c | |
parent | 2ec42da9f0ddaaa9197617eb3e5a9d18ad2ba942 (diff) |
* src/eval.c (Ffunction): Use simpler format for closures.
(Fcommandp, funcall_lambda):
* src/doc.c (Fdocumentation, store_function_docstring):
* src/data.c (Finteractive_form):
* lisp/help-fns.el (help-function-arglist):
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
* lisp/subr.el (apply-partially): Adjust to new closure format.
* lisp/emacs-lisp/disass.el (disassemble-internal): Catch closures.
Diffstat (limited to 'src/doc.c')
-rw-r--r-- | src/doc.c | 8 |
1 files changed, 3 insertions, 5 deletions
@@ -369,6 +369,7 @@ string is passed through `substitute-command-keys'. */) else if (EQ (funcar, Qkeymap)) return build_string ("Prefix command (definition is a keymap associating keystrokes with commands)."); else if (EQ (funcar, Qlambda) + || (EQ (funcar, Qclosure) && (fun = XCDR (fun), 1)) || EQ (funcar, Qautoload)) { Lisp_Object tem1; @@ -384,8 +385,6 @@ string is passed through `substitute-command-keys'. */) else return Qnil; } - else if (EQ (funcar, Qclosure)) - return Fdocumentation (Fcdr (XCDR (fun)), raw); else if (EQ (funcar, Qmacro)) return Fdocumentation (Fcdr (fun), raw); else @@ -505,7 +504,8 @@ store_function_docstring (Lisp_Object fun, EMACS_INT offset) Lisp_Object tem; tem = XCAR (fun); - if (EQ (tem, Qlambda) || EQ (tem, Qautoload)) + if (EQ (tem, Qlambda) || EQ (tem, Qautoload) + || (EQ (tem, Qclosure) && (fun = XCDR (fun), 1))) { tem = Fcdr (Fcdr (fun)); if (CONSP (tem) && INTEGERP (XCAR (tem))) @@ -513,8 +513,6 @@ store_function_docstring (Lisp_Object fun, EMACS_INT offset) } else if (EQ (tem, Qmacro)) store_function_docstring (XCDR (fun), offset); - else if (EQ (tem, Qclosure)) - store_function_docstring (Fcdr (XCDR (fun)), offset); } /* Bytecode objects sometimes have slots for it. */ |