Subject: Re: bug#9115: 24.0.50; `documentation' should not return args list for CL defun*.

From: Stefan Monnier <[email-masked]>
Date: Tue, 02 Aug 2011 21:16:49 -0400

>>>> (let ((doc (documentation bidule)))
>>>> (or (cdr (help-split-fundoc doc nil)) doc))
>>>> I agree this is not super convenient.
>>> Yes, i think i have tried that, but it doesn't return nil for the case
>>> of CL-style functions.
>> 
>> In Emacs-24, it returns nil if the function had no docstring (the CL or
>> non-CL distinction is a only indirectly linked to the problem).  So the
>> above should return either:
>> - the full docstring if there's one.
>> - nil or the empty string or "Not documented" if there isn't any
>> docstring.
> No, it doesn't, it return for example for: (I use emacs24)

Oh, you're right:

  (let* ((doc (documentation bidule))
         (split (help-split-fundoc doc nil)))
    (if split (cdr split) doc))

might work better.  Still, you should be able to get the right code by
reading the docstring and trying things out.

-- Stefan