GNU bug report logs -
#59014
29.0.50; single string in function body should act as doc string
Previous Next
Reported by: Nicolas Graner <nicolas <at> graner.name>
Date: Fri, 4 Nov 2022 12:27:01 UTC
Severity: normal
Found in version 29.0.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 59014 <at> debbugs.gnu.org (full text, mbox):
> From: Nicolas Graner <nicolas <at> graner.name>
> Date: Fri, 04 Nov 2022 13:26:22 +0100
>
> According to the Emacs lisp manual, node "Documentation Strings of Functions":
>
> You may wonder how the documentation string could be optional, since
> there are required components of the function that follow it (the
> body). Since evaluation of a string returns that string, without any
> side effects, it has no effect if it is not the last form in the
> body. Thus, in practice, there is no confusion between the first
> form of the body and the documentation string; if the only body form
> is a string then it serves both as the return value and as the
> documentation.
>
> This last sentence is no longer true in 29.0.50, the single string is
> not used as doc string:
>
> (defun f () "foo")
> ⇒ f
> (f)
> ⇒ "foo"
> (documentation 'f)
> ⇒ nil
> (emacs-version)
> ⇒ "GNU Emacs 29.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0)
> of 2022-11-03"
Thanks.
Stefan, this seems to be due to your changes in commit
39e8fd357dd0a1f3776c05eee2cc5be451686712. Specifically, the new
function-documentation returns nil in this case. Could you please
take a look at this?
This bug report was last modified 2 years and 277 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.