From mboxrd@z Thu Jan 1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: Philipp
Newsgroups: gmane.emacs.bugs
Subject: bug#41988: 28.0.50;
Edebug unconditionally instruments definitions with &define specs
Date: Sun, 21 Mar 2021 14:34:08 +0100
Message-ID: <3619E155-8F06-4F8F-B239-121ED3D164A8@gmail.com>
References:
<6D19F14E-0133-4751-B0BD-EC2A73C1D21F@gmail.com>
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.60.0.2.21\))
Content-Type: text/plain;
charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
logging-data="31556"; mail-complaints-to="usenet@ciao.gmane.io"
Cc: 41988@debbugs.gnu.org
To: Stefan Monnier
Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Mar 21 14:35:13 2021
Return-path:
Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org
Original-Received: from lists.gnu.org ([209.51.188.17])
by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.92)
(envelope-from )
id 1lNyEa-00086W-Lb
for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 21 Mar 2021 14:35:12 +0100
Original-Received: from localhost ([::1]:43256 helo=lists1p.gnu.org)
by lists.gnu.org with esmtp (Exim 4.90_1)
(envelope-from )
id 1lNyEZ-0007dE-Nx
for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 21 Mar 2021 09:35:11 -0400
Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50692)
by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from )
id 1lNyEQ-0007d6-Ok
for bug-gnu-emacs@gnu.org; Sun, 21 Mar 2021 09:35:02 -0400
Original-Received: from debbugs.gnu.org ([209.51.188.43]:42208)
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.90_1) (envelope-from )
id 1lNyEQ-0008NQ-48
for bug-gnu-emacs@gnu.org; Sun, 21 Mar 2021 09:35:02 -0400
Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
(envelope-from ) id 1lNyEQ-00012E-1D
for bug-gnu-emacs@gnu.org; Sun, 21 Mar 2021 09:35:02 -0400
X-Loop: help-debbugs@gnu.org
Resent-From: Philipp
Original-Sender: "Debbugs-submit"
Resent-CC: bug-gnu-emacs@gnu.org
Resent-Date: Sun, 21 Mar 2021 13:35:01 +0000
Resent-Message-ID:
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: followup 41988
X-GNU-PR-Package: emacs
Original-Received: via spool by 41988-submit@debbugs.gnu.org id=B41988.16163336603924
(code B ref 41988); Sun, 21 Mar 2021 13:35:01 +0000
Original-Received: (at 41988) by debbugs.gnu.org; 21 Mar 2021 13:34:20 +0000
Original-Received: from localhost ([127.0.0.1]:53754 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from )
id 1lNyDk-00011E-00
for submit@debbugs.gnu.org; Sun, 21 Mar 2021 09:34:20 -0400
Original-Received: from mail-wr1-f54.google.com ([209.85.221.54]:38906)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from ) id 1lNyDf-00010x-MG
for 41988@debbugs.gnu.org; Sun, 21 Mar 2021 09:34:18 -0400
Original-Received: by mail-wr1-f54.google.com with SMTP id z2so13904214wrl.5
for <41988@debbugs.gnu.org>; Sun, 21 Mar 2021 06:34:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
h=mime-version:subject:from:in-reply-to:date:cc
:content-transfer-encoding:message-id:references:to;
bh=/W9ACUyVWsAsjk6zZHSocOXyvQgZY5+CS/irokXx03o=;
b=SnIC6Lg9cMSWAc89wAluOX3nG4n76lvAw8ar/8wjkOABzgP344/7Vz+8kOHsSeEp9C
ehsyJr2fbhOVqiezV/KLBh5Twn4Pm1+zyEYpvBabDMzmt764oldtQMhOuTw5Kv9tNehz
ZMi6H0uuHty4tBGIZjGg3e9GaDja0Jdyb+ovkOeA0mqN0/CzJIgTxph6D+i6mT7UJnAM
5ifsnYFQyybcDEMXXKbGcL68AN8anvSpm3WrliC0l4C2Nuz72kCHDUg5aACJ7YcHZ4Vc
/pEY6SzR+As0sjuZFFpmHJYE69vx5T0zsUBFxho1xfv8GOtRDP/eRqzeRugl8f2BrvO2
02AQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc
:content-transfer-encoding:message-id:references:to;
bh=/W9ACUyVWsAsjk6zZHSocOXyvQgZY5+CS/irokXx03o=;
b=WMzbh4mtr5y7qTFkqUMBPxMJm/wxbwWDz6LbpSKYPfeDQEcMoiv+/OXrXLQ8HOiXGc
tOklHkIqSB7ho43MW9IVKTdqxa4jJDSY18E5nf2hw5xWQPsfDZ1FZSbvXAV51iXWhVhU
teAhOxyvHuqWLqgcswQvVgZmdmpYoivjGesLDtxzvKI7Liwn9yuJH5ojPkXJ6PeHOb6e
C5aqRRDj8GEv4yN49Jgq+l8T+85zIx/11RxRz6Rv8m1KC7pVJXHdwoWHsT0A5STTU2Pw
8yopxaKpilABzx10b39Ah620IESW9h83XU/Kx8x4tB6JHuLFUrUPWgIixCZijk+8MeFL
OprA==
X-Gm-Message-State: AOAM532SXVqQlarDMVO0qNGd05dh5zVRLEDhCV4IgxqSqrYTwoYr5Agf
TDDzcf5o1tRcLD5kgutU8ko=
X-Google-Smtp-Source: ABdhPJweuzDmCnv756enes3qzlxYIz9MGNcAg8mwFiAnWusl10atL6hWldVVA5FOzpKZOyz/fnhepg==
X-Received: by 2002:adf:fb05:: with SMTP id c5mr14214677wrr.302.1616333649669;
Sun, 21 Mar 2021 06:34:09 -0700 (PDT)
Original-Received: from philipps-macbook-pro.fritz.box (p57aaf893.dip0.t-ipconnect.de.
[87.170.248.147])
by smtp.gmail.com with ESMTPSA id n1sm19667629wro.36.2021.03.21.06.34.08
(version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
Sun, 21 Mar 2021 06:34:09 -0700 (PDT)
In-Reply-To:
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-BeenThere: debbugs-submit@debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
X-BeenThere: bug-gnu-emacs@gnu.org
List-Id: "Bug reports for GNU Emacs,
the Swiss army knife of text editors"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org
Original-Sender: "bug-gnu-emacs"
Xref: news.gmane.io gmane.emacs.bugs:202773
Archived-At:
> Am 18.03.2021 um 15:01 schrieb Stefan Monnier =
:
>=20
>>> No. And I'd hope the problem can be avoided in all cases.
>>> I guess we could try and make it more "official" by imposing some =
kind of "cut"
>>> such that after passing a `&define` we can't backtrack.
>> =46rom looking at the code, would it be possible to achieve this by =
setting
>> edebug-gate to non-nil in the right places?
>> If so, then this seems to be only a matter of finding the right =
places ;-)
>=20
> It's possible, but:
> - I don't understand enough the way backtracking works in Edebug to =
know
> what `edebug-gate` does, really.
It looks like you can set edebug-gate to t in edebug--match-&-spec-op =
(the &define branch). That should have the same effect as a [gate ...] =
construct around each &define form.
> - The old spec of `cl-flet` would be broken by such a change, so if we
> want to make such a change, we'd probably want to arrange so that it
> emits a clear warning.
Where? When setting the debug specification (byte-run--set-debug), or =
in some other place?
>=20
> I'm not sure it's worth the trouble: the pain seems higher than the =
gain.
>=20
This bug is rather nasty when it's hit (it took me quite a while to =
debug/hunt down), so I think it would be reasonable to prevent. We =
already disable backtracking for literal symbols, and I think forms that =
require multiple &define forms with backtracking should be exceedingly =
rare and can be rewritten as you did with cl-flet.=