GNU bug report logs - #12685
24.2; lexical binding breaks edebug conditional breakpoints

Previous Next

Package: emacs;

Reported by: Toby Cubitt <toby-dated-1351883876.27e47e <at> dr-qubit.org>

Date: Fri, 19 Oct 2012 19:20:02 UTC

Severity: normal

Found in version 24.2

Fixed in version 24.4

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Toby Cubitt <toby-dated-1351904906.63c2a7 <at> dr-qubit.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 12685 <at> debbugs.gnu.org
Subject: bug#12685: 24.2; lexical binding breaks edebug conditional breakpoints
Date: Sat, 20 Oct 2012 03:08:35 +0200
On Fri, Oct 19, 2012 at 05:41:49PM -0400, Stefan Monnier wrote:
> > Conditional breakpoints whose condition refers to a lexically-scoped
> > variable fail with a "Symbol's value as variable is void" error.
> > This is almost certainly caused by the same issue as
> > http://thread.gmane.org/gmane.emacs.devel/150556
> 
> Indeed.
> 
> > The current behaviour definitely contradicts this. Not only does the
> > breakpoint not work, the error is not "ignored and treated as if the
> > result were nil", but instead aborts execution.
> 
> The fact that it aborts execution should be fixable before the release
> (tho I'm not sure that it's really better to silently mis-interpret the
> user's request),

Indeed. But that's what the documentation says it should do, so either
the documentation or the implementation needs to be changed so that they
at least match.

> But making it actually work will require more substantial changes, so I
> don't think it's likely to be fixed for 24.3.

I figured as much. Maybe for now we could mention in the Edebug section
of the Elisp manual which parts of edebug won't (currently) work in
lexically-scoped code? As far as I can see, M-: and conditional
breakpoints should be the only things that are affected. (Though
`edebug-step-in' doesn't always seem to work for me lately, but I can't
reliably reproduce this at the moment.)

Maybe the docs should even recommend disabling lexical-binding when
edebugging for now. (Is there a good way of configuring this to happen
automatically? `edebug-setup-hook' doesn't seem quite the right place,
since it gets reset to nil after use.)

Best,
Toby
-- 
Dr T. S. Cubitt
Mathematics and Quantum Information group
Department of Mathematics
Complutense University
Madrid, Spain

email: tsc25 <at> cantab.net
web:   www.dr-qubit.org




This bug report was last modified 11 years and 289 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.