[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug#636: Please fix before the release of 23.1
From: |
Alan Mackenzie |
Subject: |
Re: bug#636: Please fix before the release of 23.1 |
Date: |
Mon, 11 Aug 2008 08:47:08 +0000 |
User-agent: |
Mutt/1.5.9i |
Hi, Ulrich and Yidong!
Thanks for CC'ing me in on this one.
On Mon, Aug 11, 2008 at 09:18:55AM +0200, Ulrich Mueller wrote:
> >>>>> On Sun, 10 Aug 2008, Chong Yidong wrote:
> > In fact, it's apparently not a problem with cc-mode, but with Emacs.
> > Here's a stripped-down recipe:
> > 1. Create a file foo.el in your lisp path with the following contents:
> > (defconst foo
> > (let ((beginning-of-defun-function
> > (lambda (&optional arg)
> > (not (eq arg nil)))))
> > (progn
> > (beginning-of-defun 1))))
> > (provide 'foo)
> Calling beginning-of-defun will move point, right?
> And since beginning-of-defun-function is essentially defined as a
> no-op, point will just be moved to the beginning-of-line. (In fact,
> eval-buffer on foo.el results in an infinite loop.)
> > By the way, replacing `progn' with `save-excursion' makes the bug go
> > away (this makes cc-def.el work too). Why? I don't know.
> Indeed. If we agree that the bug is in cc-defs.el, then the following
> patch should fix it:
> --- progmodes/cc-defs.el 27 Jun 2008 21:12:46 -0000 1.58
> +++ progmodes/cc-defs.el 11 Aug 2008 07:11:04 -0000
> @@ -1445,7 +1445,7 @@
> (let ((beginning-of-defun-function
> (lambda (&optional arg)
> (not (eq arg nil)))))
> - (if (beginning-of-defun 1)
> + (if (save-excursion (beginning-of-defun 1))
> (setq list (cons 'argumentative-bod-function list))))
> (let ((buf (generate-new-buffer " test"))
I protest against this "fix". :-) Not against the fix as such (though
it is somewhat ugly, and would need some comments), just that the bug it
fixes is not understood. Therefore, it is NOT a fix. It is still a bug,
which will cause pain somewhere else.
> Ulrich
--
Alan Mackenzie (Nuremberg, Germany).
- Re: Please fix before the release of 23.1, Glenn Morris, 2008/08/09
- Re: Please fix before the release of 23.1, Ulrich Mueller, 2008/08/10
- Re: Please fix before the release of 23.1, Ulrich Mueller, 2008/08/10
- Re: Please fix before the release of 23.1, Chong Yidong, 2008/08/10
- Re: Please fix before the release of 23.1, Chong Yidong, 2008/08/10
- Re: bug#636: Please fix before the release of 23.1, Ulrich Mueller, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1,
Alan Mackenzie <=
- Re: bug#636: Please fix before the release of 23.1, Andreas Schwab, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Alan Mackenzie, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Michael Olson, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Chong Yidong, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Alan Mackenzie, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Chong Yidong, 2008/08/11
- Re: bug#636: Please fix before the release of 23.1, Alan Mackenzie, 2008/08/13
- Re: bug#636: Please fix before the release of 23.1, Johan Bockgård, 2008/08/11
Re: Please fix before the release of 23.1, Glenn Morris, 2008/08/10