GNU bug report logs - #6415
23.1.50; edebug-eval-defun errors on dotted pair in some macros

Previous Next

Package: emacs;

Reported by: Geoff Gole <geoffgole <at> gmail.com>

Date: Sun, 13 Jun 2010 18:06:01 UTC

Severity: normal

Tags: confirmed, patch

Merged with 6566, 15587, 24885

Found in versions 23.1.50, 23.2, 26.0.50

Done: Gemini Lasswell <gazally <at> runbox.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Gemini Lasswell <gazally <at> runbox.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 6415 <at> debbugs.gnu.org, Steve Yegge <stevey <at> google.com>
Subject: bug#6415: [PATCH] fix edebug instrumentation of dotted pairs in macros
Date: Sun, 05 Nov 2017 13:45:21 -0800
[Message part 1 (text/plain, inline)]
Here's a new patch for this bug, based on the ideas in Steve's patch.
It also allows &rest and specs wrapped in vectors to attempt to match
before a dotted tail.

[0001-Fix-Edebug-s-handling-of-dotted-specs-bug-6415.patch (text/plain, attachment)]
[Message part 3 (text/plain, inline)]
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

> This edebug-dotted-spec business is really ugly, I wonder if/how we
> could just get rid of this variable.  Or at least document clearly what
> it is supposed to mean.

I agree. After far too many hours of looking at this, I think the way
to get rid of the variable is to make Edebug's internal representation
of its specs into a cl-defstruct so there is room for a "dotted" flag,
and then change all the edebug match code so that whenever it makes a
new spec or modifies the one it is working with, it inherits the
dotted flag. I have a branch with this partially done and am confident
that it will work and not cause a performance problem, but it seems
like a lot of work and a lot of changes to stable code to make it work
exactly the same. So I added a docstring.

This bug report was last modified 7 years and 182 days ago.

Previous Next


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