unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: David Reitter <david.reitter@gmail.com>
Subject: help with a bug in/using advice and/or documentation strings
Date: Tue, 13 Jun 2006 20:11:47 +0100	[thread overview]
Message-ID: <184CA3BF-B4E5-4265-BEB4-410E01B6175F@gmail.com> (raw)
In-Reply-To: BAAEB4AB-13E3-4F5B-AABF-5673521C2AA4@bellarmine.edu

I was wondering if somebody here could give me a hint about a strange  
bug that has been mentioned to me by two people - I'm not sure if the  
bug is in my packages or if it's in Emacs directly.

It involves an infinite recursion calling ad-Orig-documentation 
(symbol nil) whenever the users call something that uses  
`documentation', i.e. apropos or set-variable, etc.) Some stack  
traces are below.
This seems to occur with up-to-date CVS versions, but only within  
binaries I've produced, that is, with a number of advices and  
precompiled stuff in place.

I don't know if it's got to do with it, but I am extending some  
variable documentation strings at one point like this:

(put symbol 'variable-documentation
		       (concat
			old-doc
			(format " ... ") )

And some of this happens before dumping (i.e. in site-load.el), some  
of it afterwards. I'm not sure if I'm polluting pure space with this.

The bug is not reproducible (by me), yet it seems to be very  
persistent for the two users, and I can't figure out what should be  
different about their systems. That's why I suspected a dumping  
issue. [I might be able to add more to this tomorrow.]

Any hints where to look for would be appreciated - I'm trying to nail  
this down so I can fix it or at least compile a decent error report.
Thanks.



Begin forwarded message:

> From: Bill Rising <wrising@bellarmine.edu>
> Date: 13 June 2006 16:48:49 BDT
> To: David Reitter <david.reitter@gmail.com>
> Subject: Re: [Aquamacs-bugs] (no subject)
>
> On Jun 13, 2006, at 10:20, David Reitter wrote:
>
>> Hi Bill,
>>
>> can you please send me a stack trace for this, obtainable via  
>> Options -> Enter Debugger on Error?
>> (Then carry out your C-h f ... action).
>>
>> It might be helpful if you show me stack traces for different  
>> kinds of actions that display this error.
>
> It looks like the documentation is the culprit, as you suspected.  
> Here are several edited backtraces.
>
> Bill
> ---------------------------- cut here ----------------------------
>
> Test: getting info about a key sequence
> Input: C-h k C-x RET f
> Backtrace:
> Debugger entered--Lisp error: (error "Variable binding depth  
> exceeds max-specpdl-size")
>   ad-Orig-documentation(set-buffer-file-coding-system nil)
> ... [a total of 442 times, including above and below]
>   ad-Orig-documentation(set-buffer-file-coding-system nil)
>   documentation(set-buffer-file-coding-system)
>   describe-function-1(set-buffer-file-coding-system)
>   describe-key("\x18^X^Mf" 1 nil)
>   call-interactively(describe-key)
>
> Test: working with apropos
> Input: C-h a longline RET
> Backtrace:
> Debugger entered--Lisp error: (error "Variable binding depth  
> exceeds max-specpdl-size")
>   ad-Orig-documentation(longlines-auto-wrap t)
> ... [a total of 491 times, including above and below]
>   ad-Orig-documentation(longlines-auto-wrap t)
>   documentation(longlines-auto-wrap t)
>   apropos-command(("longline") nil)
>   call-interactively(apropos-command)
>
> Test: accessing documentation via links in the gnu help system
> Input: C-h v buffer-file-coding-system RET, then click on link to  
> write-region
> Backtrace:
> Debugger entered--Lisp error: (error "Variable binding depth  
> exceeds max-specpdl-size")
>   ad-Orig-documentation(write-region nil)
> ... [a total of 519 times, including above and below]
>   ad-Orig-documentation(write-region nil)
>   documentation(write-region)
>   describe-function-1(write-region)
>   describe-function(write-region)
>   apply(describe-function write-region)
>   help-do-xref(289 describe-function (write-region))
>   help-button-action(#<marker (moves after insertion) at 70 in  
> *Help*>)
>   push-button(295 t)
>   push-button((mouse-2 (#<window 23 on *Help*> 295 (508 . 131)  
> 31539866 nil 295 (63 . 7) nil (4 . 12) (8 . 17))))
>   call-interactively(push-button)
>
> Test: raising the max-specpdl-size to get nesting error
> Input: M-x set-variable RET max-specpdl-size RET 10000 RET C-h k C- 
> x RET f
> Backtrace:
> Debugger entered--Lisp error: (error "Lisp nesting exceeds `max- 
> lisp-eval-depth'")
>   ad-Orig-documentation(set-buffer-file-coding-system nil)
> ... [a total of 597 times, including above and below]
>   ad-Orig-documentation(set-buffer-file-coding-system nil)
>   documentation(set-buffer-file-coding-system)
>   describe-function-1(set-buffer-file-coding-system)
>   describe-key("\x18
> f" 1 nil)
>   call-interactively(describe-key)

       reply	other threads:[~2006-06-13 19:11 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BAAEB4AB-13E3-4F5B-AABF-5673521C2AA4@bellarmine.edu>
2006-06-13 19:11 ` David Reitter [this message]
2006-06-14 13:46   ` help with a bug in/using advice and/or documentation strings David Reitter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=184CA3BF-B4E5-4265-BEB4-410E01B6175F@gmail.com \
    --to=david.reitter@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).