diff options
| author | Stefan Monnier | 2011-03-13 18:31:49 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2011-03-13 18:31:49 -0400 |
| commit | 23aba0ea0e4922cfd8534f43667d3a758f2d2974 (patch) | |
| tree | 798c1de793ca32e93da9edac4705bcdb93aeecc7 /src/doc.c | |
| parent | 2ec42da9f0ddaaa9197617eb3e5a9d18ad2ba942 (diff) | |
| download | emacs-23aba0ea0e4922cfd8534f43667d3a758f2d2974.tar.gz emacs-23aba0ea0e4922cfd8534f43667d3a758f2d2974.zip | |
* 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'. */) | |||
| 369 | else if (EQ (funcar, Qkeymap)) | 369 | else if (EQ (funcar, Qkeymap)) |
| 370 | return build_string ("Prefix command (definition is a keymap associating keystrokes with commands)."); | 370 | return build_string ("Prefix command (definition is a keymap associating keystrokes with commands)."); |
| 371 | else if (EQ (funcar, Qlambda) | 371 | else if (EQ (funcar, Qlambda) |
| 372 | || (EQ (funcar, Qclosure) && (fun = XCDR (fun), 1)) | ||
| 372 | || EQ (funcar, Qautoload)) | 373 | || EQ (funcar, Qautoload)) |
| 373 | { | 374 | { |
| 374 | Lisp_Object tem1; | 375 | Lisp_Object tem1; |
| @@ -384,8 +385,6 @@ string is passed through `substitute-command-keys'. */) | |||
| 384 | else | 385 | else |
| 385 | return Qnil; | 386 | return Qnil; |
| 386 | } | 387 | } |
| 387 | else if (EQ (funcar, Qclosure)) | ||
| 388 | return Fdocumentation (Fcdr (XCDR (fun)), raw); | ||
| 389 | else if (EQ (funcar, Qmacro)) | 388 | else if (EQ (funcar, Qmacro)) |
| 390 | return Fdocumentation (Fcdr (fun), raw); | 389 | return Fdocumentation (Fcdr (fun), raw); |
| 391 | else | 390 | else |
| @@ -505,7 +504,8 @@ store_function_docstring (Lisp_Object fun, EMACS_INT offset) | |||
| 505 | Lisp_Object tem; | 504 | Lisp_Object tem; |
| 506 | 505 | ||
| 507 | tem = XCAR (fun); | 506 | tem = XCAR (fun); |
| 508 | if (EQ (tem, Qlambda) || EQ (tem, Qautoload)) | 507 | if (EQ (tem, Qlambda) || EQ (tem, Qautoload) |
| 508 | || (EQ (tem, Qclosure) && (fun = XCDR (fun), 1))) | ||
| 509 | { | 509 | { |
| 510 | tem = Fcdr (Fcdr (fun)); | 510 | tem = Fcdr (Fcdr (fun)); |
| 511 | if (CONSP (tem) && INTEGERP (XCAR (tem))) | 511 | if (CONSP (tem) && INTEGERP (XCAR (tem))) |
| @@ -513,8 +513,6 @@ store_function_docstring (Lisp_Object fun, EMACS_INT offset) | |||
| 513 | } | 513 | } |
| 514 | else if (EQ (tem, Qmacro)) | 514 | else if (EQ (tem, Qmacro)) |
| 515 | store_function_docstring (XCDR (fun), offset); | 515 | store_function_docstring (XCDR (fun), offset); |
| 516 | else if (EQ (tem, Qclosure)) | ||
| 517 | store_function_docstring (Fcdr (XCDR (fun)), offset); | ||
| 518 | } | 516 | } |
| 519 | 517 | ||
| 520 | /* Bytecode objects sometimes have slots for it. */ | 518 | /* Bytecode objects sometimes have slots for it. */ |