all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Toby Cubitt <toby-dated-1352221835.dd5c27@dr-qubit.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: 12685@debbugs.gnu.org
Subject: bug#12685: 24.2; lexical binding breaks edebug conditional breakpoints
Date: Tue, 23 Oct 2012 19:10:45 +0200	[thread overview]
Message-ID: <20121023171045.GA30611@c3po> (raw)
In-Reply-To: <jwvr4op6tpk.fsf-monnier+emacs@gnu.org>

On Tue, Oct 23, 2012 at 12:33:34PM -0400, Stefan Monnier wrote:
> >> 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.
> 
> I think at this stage the best is to add a note that it might fail when
> used for lexical-binding code.

Sounds reasonable.

> > 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.)
> 
> Agreed.  Could you take care of it?

I can, but I can't guarantee I'll find time to do it for a couple of
weeks, as I'm very busy with work until mid-November.

> > Maybe the docs should even recommend disabling lexical-binding when
> > edebugging for now.
> 
> I don't think so.  The programmer can reach his own conclusion based on
> the text you'll add warning that some parts don't work.

OK.

> > (Is there a good way of configuring this to happen
> > automatically?
> 
> No, that would be even worse, since some code only works in
> lexical-binding mode (and there's no way to figure out if the code in
> the current buffer is in this category).

I was asking this out of personal interest, not suggesting it as a way of
"fixing" the problem. (I completely agree that it's not a good solution
in general.) But the choice currently is: use dynamic-scoping, or use a
crippled edebug. The only work-around I can see until this is fixed is to
manually disable lexical-binding before instrumenting for edebug.

I was asking if you knew of a good place to hook into (just in my own
private Emacs config), so that I don't have to do this manually every
time I want to run edebug?

I'm well aware that this means whatever behaviour I see under edebug
could be different from the real behaviour. Given how rarely
dynamical-binding differs from lexical-binding in practice, it's still a
useful work-around for me, until edebug is fixed.

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

email: tsc25@cantab.net
web:   www.dr-qubit.org





  reply	other threads:[~2012-10-23 17:10 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-19 19:18 bug#12685: 24.2; lexical binding breaks edebug conditional breakpoints Toby Cubitt
2012-10-19 21:41 ` Stefan Monnier
2012-10-20  1:08   ` Toby Cubitt
2012-10-23 16:33     ` Stefan Monnier
2012-10-23 17:10       ` Toby Cubitt [this message]
2012-10-23 18:27         ` Stefan Monnier
2012-10-23 18:39           ` Toby Cubitt
2012-10-24 13:55             ` Stefan Monnier
2013-07-26 16:09 ` Stefan Monnier
2013-08-05 15:14   ` Toby Cubitt
2013-08-05 17:27     ` Stefan Monnier
2013-08-08 23:19     ` Stefan Monnier
2013-08-09 11:02       ` Toby Cubitt

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

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

  git send-email \
    --in-reply-to=20121023171045.GA30611@c3po \
    --to=toby-dated-1352221835.dd5c27@dr-qubit.org \
    --cc=12685@debbugs.gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.