1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 11:50:28 +02:00
guile/module
Ludovic Courtès c438cd7175 eval: Store docstrings for lambdas.
Fixes <http://bugs.gnu.org/12173>.
Reported by Ian Price <ianprice90@googlemail.com>.

* libguile/memoize.c (MAKMEMO_LAMBDA): New `docstring' parameter.  Add
  it as the second argument of `SCM_M_LAMBDA'.  Update caller.
  (memoize)[SCM_M_LAMBDA]: Extract docstring from EXP; when `memoize'
  returns, add the docstring to the lambda's arguments.
  (unmemoize)[SCM_M_LAMBDA]: Adjust to new argument layout of
  `SCM_M_LAMBDA'.
* libguile/eval.c (BOOT_CLOSURE_NUM_REQUIRED_ARGS,
  BOOT_CLOSURE_HAS_REST_ARGS, BOOT_CLOSURE_IS_REST,
  BOOT_CLOSURE_PARSE_FULL): Adjust to new argument layout of
  `SCM_M_LAMBDA'.
* module/ice-9/eval.scm (primitive-eval)[make-general-closure]:
  Likewise.
  [eval]: When EXP is a lambda, match its docstring; when the docstring
  is not #f, add it to the closures procedure properties.
* test-suite/tests/eval.test ("docstrings"): New test prefix.

* libguile/procs.c (sym_documentation): Rename to...
  (scm_sym_documentation): ... this.  Make it global.
* libguile/procs.h (scm_sym_documentation): New declaration.
2012-11-28 16:43:59 +01:00
..
ice-9 eval: Store docstrings for lambdas. 2012-11-28 16:43:59 +01:00
language cse: Fix out-of-bounds access to the database. 2012-11-21 23:51:16 +01:00
oop fix goops compilation when current language is not scheme 2012-07-05 10:15:02 +02:00
rnrs R6RS `string-for-each' should accept multiple string arguments 2012-11-22 22:26:16 +01:00
scripts Fix a couple of warnings. 2012-01-26 00:37:23 +01:00
srfi doc: Fix typo in `set-record-type-printer!' doc. 2012-11-17 15:34:49 +01:00
sxml remove duplicate when/unless definitions 2012-01-20 21:16:50 +01:00
system Improve error for set-fields paths leading to different types. 2012-11-10 01:37:20 -05:00
texinfo docbook->texi fix 2012-05-08 16:03:54 +02:00
web web client: correctly handle uri-query, etc. in relative URI headers 2012-11-27 22:41:33 +01:00
Makefile.am Remove reference to scm_init_popen' when fork' is unavailable. 2012-11-23 23:37:29 +01:00
rnrs.scm Add missing R6RS `open-file-input/output-port' procedure 2012-11-12 20:47:57 +01:00
statprof.scm add gcprof 2011-05-05 11:43:12 +02:00
texinfo.scm more robust texinfo alias handling 2012-08-25 14:11:45 +02:00