GNU bug report logs - #81106
31.0.50; [PATCH] Make "Missing `lexical-binding' cookie" functionality more user-friendly

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Phil Sainty <psainty@HIDDEN>; Keywords: patch; dated Sat, 23 May 2026 13:14:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 30 May 2026 11:52:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 30 07:52:18 2026
Received: from localhost ([127.0.0.1]:39534 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wTIEi-0003zk-2g
	for submit <at> debbugs.gnu.org; Sat, 30 May 2026 07:52:18 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:60692)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wTIEc-0003xu-Mc
 for 81106 <at> debbugs.gnu.org; Sat, 30 May 2026 07:52:13 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wTIEW-0004LR-LO; Sat, 30 May 2026 07:52:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=IJbHmyFNw5j0A5Rug7qbHWjctWHmSoOL1ysJ4S3Ryio=; b=HeXxX+ocgAty
 sWbje/vsslq6yJyNOTNaxnyYEEX3wtAg0gbxx985Gat6eOrTmtgzhMUFKF5d9pTPG0EA+N8AUbIq6
 hBVUOwkMjQD8lXadOB4106vAkocexOFSrHjZVfRaM2H9I44UDXysjfLb01rkkNkICnNMt7rh/9VdR
 Yv5HKsTWQpsUsSa08LP1YtvE7W05Jqm3S+9esKgX2RRyA1WT1oMCvh5hYxSSJkN3yH3T6HJ9Y00Qj
 H1V1E9s+8Tj3jqLM5GXzkIK4jmuZhqVwyDhN+2Ux3fJvoQ4M/yOo4n81VIrrzAQmkVcMiems0wY4H
 /xGF2PICB2tkQZO6MY+KNA==;
Date: Sat, 30 May 2026 14:51:57 +0300
Message-Id: <86se79yv1e.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
In-Reply-To: <b5c05d65bf1d8940a6c242ca48289741@HIDDEN> (message from
 Phil Sainty on Sat, 30 May 2026 22:15:01 +1200)
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN> <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
 <7152a140e8b70e55e7a591015541543c@HIDDEN>
 <jwvldd7ioox.fsf-monnier+emacs@HIDDEN>
 <b5c05d65bf1d8940a6c242ca48289741@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Sat, 30 May 2026 22:15:01 +1200
> From: Phil Sainty <psainty@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
> 
> On 2026-05-26 01:54, Stefan Monnier wrote:
> > IME, even if the warning is the same, the reaction to the
> > warning will be different: in case (1), I'd expect the users to
> > look for a more recent version of that library and/or complain
> > somewhere that library FOO causes annoying warnings.  Which is
> > indeed the better course of action so the problem can be
> > addressed once for all users of library FOO by someone who has
> > a better chance of knowing what they're doing.
> 
> I'd expect the same, but there's plenty of potential for there
> to be no newer version/current maintainer for a file; as well
> as for the user to see so many of these warnings that following
> up each one individually may be an onerous task.  So even if
> they ultimately look for updates and/or submit bug reports
> where possible, they may still want an interim solution.
> 
> I'm attaching a new patch with the following change to cover
> cases (1) and (2) separately, including the suggestion to
> check for newer versions.

Thanks, I might be okay with something like that for the master
branch, but not for the release branch: it's too much of a change for
the latter.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 30 May 2026 10:15:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 30 06:15:15 2026
Received: from localhost ([127.0.0.1]:38044 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wTGin-0000QH-Nw
	for submit <at> debbugs.gnu.org; Sat, 30 May 2026 06:15:14 -0400
Received: from smtp-3.orcon.net.nz ([60.234.4.44]:51023)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wTGil-0000OV-BJ
 for 81106 <at> debbugs.gnu.org; Sat, 30 May 2026 06:15:12 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Type:Message-ID:References:In-Reply-To:
 Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:
 Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:
 List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=GoS9gpvHWcXCHV3Q6lpkuPVZ6R6zC5Us/xd8ViCw9Gc=; b=N+ED/0Sw3P0VJF9iN+HUm8Y76
 qhMrCp/Fwsf+EBKXYI++ULd+4h6OZMykf/5QbtcT+3mJLLneAr2pMLqNrhulNUP15S3CXJqzZYN4n
 RChNGJjgwIr8gC8LT0qeH2450VH9Pl7lr7WWtunEhJsx99XuMJwB1aV3eWPM5Rv9iP0Ssp72MXmqy
 vMPtC/PTTmuRlA1otlxKvUKe28wMRc3gJHpujtsKlGd20eIKrawxr+66Cm2jZWNmjONcuvsGqiKVW
 wzOtwPxC39M/jJ1n3SpfOT27T159XqE6+OcdinH0H4kstdbt8uMOlLQPemy7ileZ08f0EKUHcLExV
 r6v5EcvHw==;
Received: from [10.253.37.70] (port=39645 helo=webmail.orcon.net.nz)
 by smtp-3.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wTGic-000375-0C; Sat, 30 May 2026 22:15:02 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Sat, 30 May 2026 22:15:01 +1200
MIME-Version: 1.0
Date: Sat, 30 May 2026 22:15:01 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <jwvldd7ioox.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN> <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
 <7152a140e8b70e55e7a591015541543c@HIDDEN>
 <jwvldd7ioox.fsf-monnier+emacs@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <b5c05d65bf1d8940a6c242ca48289741@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: multipart/mixed;
 boundary="=_f17fed3c03eed2ba094ae272d32585b5"
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81106
Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=_f17fed3c03eed2ba094ae272d32585b5
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII;
 format=flowed

On 2026-05-26 01:54, Stefan Monnier wrote:
> IME, even if the warning is the same, the reaction to the
> warning will be different: in case (1), I'd expect the users to
> look for a more recent version of that library and/or complain
> somewhere that library FOO causes annoying warnings.  Which is
> indeed the better course of action so the problem can be
> addressed once for all users of library FOO by someone who has
> a better chance of knowing what they're doing.

I'd expect the same, but there's plenty of potential for there
to be no newer version/current maintainer for a file; as well
as for the user to see so many of these warnings that following
up each one individually may be an onerous task.  So even if
they ultimately look for updates and/or submit bug reports
where possible, they may still want an interim solution.

I'm attaching a new patch with the following change to cover
cases (1) and (2) separately, including the suggestion to
check for newer versions.


  @@ -723,8 +723,18 @@ elisp-add-lexical-binding-cookie
   info node `(elisp)Converting to Lexical Binding' for details).

   Lisp authors are encouraged to convert their code to the modern 
lexical
  -binding dialect.  Users who are not sure what this means should keep 
the
  -current dialect to avoid any unintended changes in behavior.
  +binding dialect.
  +
  +If you're not sure what to do, the best choice depends on the file:
  +
  +- For files you expect to add code to (such as your own init file),
  +  lexical binding is recommended to ensure that code copied from
  +  external sources is likely to work as intended.
  +
  +- For files you do not expect to edit (such as third-party libraries),
  +  you should keep the current dialect to avoid any unintended changes
  +  in behavior.  (Alternatively, check for a newer version which 
already
  +  includes a lexical-binding cookie.)

   See info node `(elisp)Selecting Lisp Dialect' for more information."))
           ("dynamic"

--=_f17fed3c03eed2ba094ae272d32585b5
Content-Transfer-Encoding: base64
Content-Type: text/x-diff;
 name=0001-Make-Missing-lexical-binding-cookie-functionality-mo.patch
Content-Disposition: attachment;
 filename=0001-Make-Missing-lexical-binding-cookie-functionality-mo.patch;
 size=5277

RnJvbSA4MDNjMzM5MGRkNThjMDNmMTVlMmZjNWZlN2VlNWZiZGE0YmZiNDUwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsIFNhaW50eSA8cHNhaW50eUBvcmNvbi5uZXQubno+CkRh
dGU6IFN1biwgMTAgTWF5IDIwMjYgMTI6MzU6MzAgKzEyMDAKU3ViamVjdDogW1BBVENIXSBNYWtl
ICJNaXNzaW5nIGBsZXhpY2FsLWJpbmRpbmcnIGNvb2tpZSIgZnVuY3Rpb25hbGl0eSBtb3JlCiB1
c2VyLWZyaWVuZGx5CgotLS0KIGxpc3AvZmlsZXMuZWwgICAgICAgICAgICAgICAgfCAgNCArLS0K
IGxpc3AvcHJvZ21vZGVzL2VsaXNwLW1vZGUuZWwgfCA2NCArKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMiBkZWxl
dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL2ZpbGVzLmVsIGIvbGlzcC9maWxlcy5lbAppbmRl
eCA5YjFmYzA5ZmNmYS4uODU2NTZlMmYyY2IgMTAwNjQ0Ci0tLSBhL2xpc3AvZmlsZXMuZWwKKysr
IGIvbGlzcC9maWxlcy5lbApAQCAtNDMyNiwxMyArNDMyNiwxMyBAQCBpbnRlcm5hbC0tZ2V0LWRl
ZmF1bHQtbGV4aWNhbC1iaW5kaW5nCiBTZWUgYCVzJyBhbmQgYCVzJwogZm9yIG1vcmUgaW5mb3Jt
YXRpb24uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZQotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIChidXR0b25pemUgImVsaXNwLWVuYWJsZS1sZXhpY2FsLWJp
bmRpbmciCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGJ1dHRvbml6ZSAiZWxpc3At
YWRkLWxleGljYWwtYmluZGluZy1jb29raWUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAobGFtYmRhIChfKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAocG9wLXRvLWJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGlmIChidWZmZXJwIHNvdXJjZSkgc291cmNlCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaW5kLWZpbGUtbm9zZWxlY3Qg
c291cmNlKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChj
YWxsLWludGVyYWN0aXZlbHkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICMnZWxpc3AtZW5hYmxlLWxleGljYWwtYmluZGluZykpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjJ2VsaXNwLWFkZC1sZXhpY2FsLWJpbmRpbmct
Y29va2llKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5pbCAi
bW91c2UtMjogQWRkIGNvb2tpZSIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZ1
bmNhbGwgbWliICIoZWxpc3ApU2VsZWN0aW5nIExpc3AgRGlhbGVjdCIpCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGZ1bmNhbGwgbWliICIoZWxpc3ApQ29udmVydGluZyB0byBMZXhp
Y2FsIEJpbmRpbmciKSkKZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2VsaXNwLW1vZGUuZWwg
Yi9saXNwL3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsCmluZGV4IDVhNTUwYjMzMDE2Li5jMjIyZTE3
ZjY2NCAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMvZWxpc3AtbW9kZS5lbAorKysgYi9saXNw
L3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsCkBAIC02ODAsNiArNjgwLDcwIEBAIGVtYWNzLWxpc3At
c2V0LWVsZWN0cmljLXRleHQtcGFpcnMKICAgICAgICAgICAoc2V0cS1sb2NhbCBlbGVjdHJpYy1w
YWlyLXRleHQtcGFpcnMgZWxpc3AtcGFpcnMpKSkpKQogICAocmVtb3ZlLWhvb2sgJ2VsZWN0cmlj
LXBhaXItbW9kZS1ob29rICMnZW1hY3MtbGlzcC1zZXQtZWxlY3RyaWMtdGV4dC1wYWlycykpCiAK
KyhkZWZ1biBlbGlzcC1hZGQtbGV4aWNhbC1iaW5kaW5nLWNvb2tpZSAoJm9wdGlvbmFsIG92ZXJy
aWRlKQorICAiQWRkIGZpbGUtbG9jYWwgbGV4aWNhbC1iaW5kaW5nIHZhcmlhYmxlIGZvciB0aGUg
Y3VycmVudCBidWZmZXIncyBmaWxlLgorQWxzbyBzZXRzIHRoZSBidWZmZXItbG9jYWwgdmFsdWUg
dG8gbWF0Y2guCisKK0lmIHRoZSBmaWxlIGhhcyBhIHByZS1leGlzdGluZyBjb29raWUgdGhlbiBw
cm9tcHQgdGhlIHVzZXIgdG8gY29uZmlybQordGhhdCB0aGV5IHdpc2ggdG8gdXBkYXRlIHRoZSBl
eGlzdGluZyB2YWx1ZSwgdW5sZXNzIE9WRVJSSURFIGlzIG5vbi1uaWwuIgorICAoaW50ZXJhY3Rp
dmUgIlAiKQorICAobGV0KiAoKHByb3AtdmFycyAoaGFjay1sb2NhbC12YXJpYWJsZXMtcHJvcC1s
aW5lKSkKKyAgICAgICAgIChjb29raWUgKGFzc3EgJ2xleGljYWwtYmluZGluZyBwcm9wLXZhcnMp
KQorICAgICAgICAgKGN1cnJlbnQgKGlmIGNvb2tpZSAoY2RyIGNvb2tpZSkgbGV4aWNhbC1iaW5k
aW5nKSkKKyAgICAgICAgICh1cGRhdGUgKG9yIChub3QgY29va2llKSBvdmVycmlkZSkpKQorICAg
ICh3aGVuIChhbmQgY29va2llIChub3Qgb3ZlcnJpZGUpKQorICAgICAgKHNldHEgdXBkYXRlICh5
LW9yLW4tcCAoZm9ybWF0ICJcCitBIGxleGljYWwtYmluZGluZyBjb29raWUgYWxyZWFkeSBleGlz
dHMgd2l0aCB2YWx1ZSBgJXMnLiAgT3ZlcnJpZGU/ICIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAoY2RyIGNvb2tpZSkpKSkpCisgICAgKGlmIChub3QgdXBkYXRlKQorICAg
ICAgICAobWVzc2FnZSAiS2VwdCBleGlzdGluZyBsZXhpY2FsLWJpbmRpbmcgY29va2llIikKKyAg
ICAgIChwY2FzZSAoY2FkciAocmVhZC1tdWx0aXBsZS1jaG9pY2UKKyAgICAgICAgICAgICAgICAg
ICAgKGlmIGN1cnJlbnQKKyAgICAgICAgICAgICAgICAgICAgICAgICJLZWVwIGxleGljYWwgYmlu
ZGluZyBvciBjaGFuZ2UgdG8gZHluYW1pYyBiaW5kaW5nPyIKKyAgICAgICAgICAgICAgICAgICAg
ICAiS2VlcCBkeW5hbWljIGJpbmRpbmcgb3IgY2hhbmdlIHRvIGxleGljYWwgYmluZGluZz8iKQor
ICAgICAgICAgICAgICAgICAgICAoaWYgY3VycmVudAorICAgICAgICAgICAgICAgICAgICAgICAg
JygoP2wgImxleGljYWwiICJVc2UgbGV4aWNhbCBiaW5kaW5nIikKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKD9kICJkeW5hbWljIiAiVXNlIGR5bmFtaWMgYmluZGluZyBvbmx5IikpCisgICAg
ICAgICAgICAgICAgICAgICAgJygoP2QgImR5bmFtaWMiICJVc2UgZHluYW1pYyBiaW5kaW5nIG9u
bHkiKQorICAgICAgICAgICAgICAgICAgICAgICAgKD9sICJsZXhpY2FsIiAiVXNlIGxleGljYWwg
YmluZGluZyIpKSkKKyAgICAgICAgICAgICAgICAgICAgIlwKK1RoZSAtKi0gbGV4aWNhbC1iaW5k
aW5nIC0qLSBjb29raWUgb24gdGhlIGZpcnN0IGxpbmUgb2YgYW4gZW1hY3MgbGlzcAorZmlsZSBk
ZWNsYXJlcyB3aGljaCBkaWFsZWN0IG9mIGVtYWNzIGxpc3AgdGhlIGNvZGUgaXMgd3JpdHRlbiBm
b3I6IHRoZQorbmV3ZXIgbGV4aWNhbCBiaW5kaW5nIGRpYWxlY3QgaWYgdGhlIHZhbHVlIGlzIGB0
Jywgb3IgdGhlIG9sZGVyIGR5bmFtaWMKK2JpbmRpbmcgZGlhbGVjdCBpZiB0aGUgdmFsdWUgaXMg
YG5pbCcuCisKK0J5IGRlZmF1bHQsIGEgZmlsZSB3aGljaCBsYWNrcyB0aGlzIGNvb2tpZSB1c2Vz
IGR5bmFtaWMgYmluZGluZyBvbmx5OworYnV0IHRoaXMgZGVmYXVsdCBtYXkgY2hhbmdlIGluIGEg
ZnV0dXJlIHJlbGVhc2UsIGFuZCBzbyB0aGUgY29va2llCitzaG91bGQgYmUgaW5jbHVkZWQgaW4g
YWxsIGVtYWNzIGxpc3AgZmlsZXMgdG8gZW5zdXJlIHRoYXQgYSBmaWxlIGNhbm5vdAorY2hhbmdl
IGRpYWxlY3RzIHVuZXhwZWN0ZWRseSBpbiBmdXR1cmUuCisKK0Nob29zZSAoZCl5bmFtaWMgdG8g
YWRkIHRoZSBtaXNzaW5nIGNvb2tpZSB3aGlsZSBtYWludGFpbmluZyB0aGUgY29kZSdzCitjdXJy
ZW50IGJlaGF2aW9yICh3aXRoIG5vIG90aGVyIGNoYW5nZXMgcmVxdWlyZWQpLiAgQ2hvb3NlIChs
KWV4aWNhbCB0bworY2hhbmdlIHRvIGxleGljYWwgYmluZGluZyAodGhpcyBtYXkgbmVjZXNzaXRh
dGUgb3RoZXIgY29kZSBjaGFuZ2VzOyBzZWUKK2luZm8gbm9kZSBgKGVsaXNwKUNvbnZlcnRpbmcg
dG8gTGV4aWNhbCBCaW5kaW5nJyBmb3IgZGV0YWlscykuCisKK0xpc3AgYXV0aG9ycyBhcmUgZW5j
b3VyYWdlZCB0byBjb252ZXJ0IHRoZWlyIGNvZGUgdG8gdGhlIG1vZGVybiBsZXhpY2FsCitiaW5k
aW5nIGRpYWxlY3QuCisKK0lmIHlvdSdyZSBub3Qgc3VyZSB3aGF0IHRvIGRvLCB0aGUgYmVzdCBj
aG9pY2UgZGVwZW5kcyBvbiB0aGUgZmlsZToKKworLSBGb3IgZmlsZXMgeW91IGV4cGVjdCB0byBh
ZGQgY29kZSB0byAoc3VjaCBhcyB5b3VyIG93biBpbml0IGZpbGUpLAorICBsZXhpY2FsIGJpbmRp
bmcgaXMgcmVjb21tZW5kZWQgdG8gZW5zdXJlIHRoYXQgY29kZSBjb3BpZWQgZnJvbQorICBleHRl
cm5hbCBzb3VyY2VzIGlzIGxpa2VseSB0byB3b3JrIGFzIGludGVuZGVkLgorCistIEZvciBmaWxl
cyB5b3UgZG8gbm90IGV4cGVjdCB0byBlZGl0IChzdWNoIGFzIHRoaXJkLXBhcnR5IGxpYnJhcmll
cyksCisgIHlvdSBzaG91bGQga2VlcCB0aGUgY3VycmVudCBkaWFsZWN0IHRvIGF2b2lkIGFueSB1
bmludGVuZGVkIGNoYW5nZXMKKyAgaW4gYmVoYXZpb3IuICAoQWx0ZXJuYXRpdmVseSwgY2hlY2sg
Zm9yIGEgbmV3ZXIgdmVyc2lvbiB3aGljaCBhbHJlYWR5CisgIGluY2x1ZGVzIGEgbGV4aWNhbC1i
aW5kaW5nIGNvb2tpZS4pCisKK1NlZSBpbmZvIG5vZGUgYChlbGlzcClTZWxlY3RpbmcgTGlzcCBE
aWFsZWN0JyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iKSkKKyAgICAgICAgKCJkeW5hbWljIgorICAg
ICAgICAgKHNldHEtbG9jYWwgbGV4aWNhbC1iaW5kaW5nIG5pbCkKKyAgICAgICAgIChhZGQtZmls
ZS1sb2NhbC12YXJpYWJsZS1wcm9wLWxpbmUgJ2xleGljYWwtYmluZGluZyBuaWwpKQorICAgICAg
ICAoImxleGljYWwiCisgICAgICAgICAoc2V0cS1sb2NhbCBsZXhpY2FsLWJpbmRpbmcgdCkKKyAg
ICAgICAgIChhZGQtZmlsZS1sb2NhbC12YXJpYWJsZS1wcm9wLWxpbmUgJ2xleGljYWwtYmluZGlu
ZyB0KSkpKSkpCisKIChkZWZ1biBlbGlzcC1lbmFibGUtbGV4aWNhbC1iaW5kaW5nICgmb3B0aW9u
YWwgaW50ZXJhY3RpdmUpCiAgICJNYWtlIHRoZSBjdXJyZW50IGJ1ZmZlciB1c2UgYGxleGljYWwt
YmluZGluZycuCiBXaXRoIGEgcHJlZml4IGFyZ3VtZW50IFxcW3VuaXZlcnNhbC1hcmd1bWVudF0s
IG1ha2UgdGhlIGJ1ZmZlciB1c2UKLS0gCjIuMzQuMQoK
--=_f17fed3c03eed2ba094ae272d32585b5--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 27 May 2026 18:55:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 27 14:55:36 2026
Received: from localhost ([127.0.0.1]:49166 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wSJPk-0007S2-FL
	for submit <at> debbugs.gnu.org; Wed, 27 May 2026 14:55:36 -0400
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:6627)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1wSJPi-0007Rf-IF
 for 81106 <at> debbugs.gnu.org; Wed, 27 May 2026 14:55:35 -0400
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id A452382141;
 Wed, 27 May 2026 14:55:28 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1779908127;
 bh=2xz5e3qL/NHwIWXisWB8874oVeMA8qVJvYsBQESB/nU=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=HhdUvdUtLoqh06Yf0CXZbM4QIzjkV1k7NPiLSjQeGvK3aqPfoPx1td/ZO1HYxjuY1
 mYx2s68TCnQlFnATCb5Zs5XnzJNLgt+EnGIUFfdjnirM4DQ0JCoowYyg7ex4TF2bmg
 /7b1/beYXF8SU1oJbYo1bs58+ic04q8aGoRId4QxLR+xAXE3c9rVmoGMWmXBrgfn/5
 hK5kKGWE7IMU6owOpCCkG0BUNudPOlBh5jirVw4dj1k2ZQuo5R68w7+rQ3ZO4AxXmz
 pMWoS5F6PthI6DQZO2OTrdSQnkkF1IkongIvOmf/6nK8Nd7H2eEUicBmyROX8wUSDu
 axdbHyDa/2QzQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id ABDFA819CD;
 Wed, 27 May 2026 14:55:27 -0400 (EDT)
Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 9A184120A23;
 Wed, 27 May 2026 14:55:27 -0400 (EDT)
From: Stefan Monnier <monnier@HIDDEN>
To: Tomas Nordin <tomasn@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <87zf1k1z9d.fsf@HIDDEN>
Message-ID: <jwvmrxkit7y.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN>
 <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN>
 <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN>
 <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN> <87zf1k1z9d.fsf@HIDDEN>
Date: Wed, 27 May 2026 14:55:17 -0400
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.193 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: Phil Sainty <psainty@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

>>> I'm just trying to ensure that the non-technical users have the help
>>> they need to navigate this, and I remain convinced that the current
>>> approach will be problematic for some of them.
>>
>> Do you know of such non-technical users?  If so, please send them our
>> way, so they can help us improve the situation.
>
> In my humble .emacs I have bunch of this kind of settings:
>
>     (with-eval-after-load 'diff-mode
>       (define-key diff-mode-map (kbd "M-o") nil))

This is an example of a piece of code that works just as well with
`lexical-binding:t` as with `lexical-binding:nil`.

> To satisfy the byte-compiler [1], I added 
>
>     (defvar diff-mode-map)

Indeed the byte-compiler is not clever enough to understand that
`diff-mode-map` will be defined by the time we get to `define-key`, so
it emits a warning unless you add the above `defvar` (which I'd add
within the `eval-after-load` but before the `define-key`).

> above the with-eval. Is that the way to refer to variables that might be
> "free" at the point when I want to do the setting?

The `defvar` is not needed for the code to work correctly.  It's only
needed to silence the compiler's warning (whose purpose is to point out
that there's a possible bug in your code, but this is a false positive).


=== Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 27 May 2026 18:30:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 27 14:30:36 2026
Received: from localhost ([127.0.0.1]:48794 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wSJ1Y-0004hA-30
	for submit <at> debbugs.gnu.org; Wed, 27 May 2026 14:30:36 -0400
Received: from mout02.posteo.de ([185.67.36.66]:52193)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <tomasn@HIDDEN>) id 1wSJ1U-0004aV-Ci
 for 81106 <at> debbugs.gnu.org; Wed, 27 May 2026 14:30:34 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 9DCB6240101
 for <81106 <at> debbugs.gnu.org>; Wed, 27 May 2026 20:30:24 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=2017;
 t=1779906624; bh=4/wOpJbcqybjFE13xjjFyWxF9vWS7y63wf10zOqlaS4=;
 h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type:
 From;
 b=AQxEmDKk311PkZy6wswssVu1ibcJsYUDdfsU7CYsS7PpSwciMxIiL3pFJx6PZbI1H
 tbi10Hdxsxyjk3y60YCAN+l2Gqs+YX83C7NlgRDciIyZESsa5NQPIHQW5Qm/EzY65E
 1kV+p6rvuNgJ2t58Ti0vNA2UUrBfqEBp6zaXj0y1dWtRL1sPGCtwJLNUUx+9qHgXl+
 rCLTUWgfRKppouRpaa5ss0pZxlN69BJTl7VTfKnKCB4O4TLStEFavPVEmkGNoiIOMP
 K8WgzeKftg0hMyBtSl0PN5eoXEnEUydJ/rApOEIY14r8BkTzvIy0kHHAy2yZRAa3k9
 K6/XB1sQM0T1A==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4gQdTW0W6pz9rxM;
 Wed, 27 May 2026 20:30:22 +0200 (CEST)
From: Tomas Nordin <tomasn@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>, Phil Sainty
 <psainty@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN> <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
Date: Wed, 27 May 2026 18:30:24 +0000
Message-ID: <87zf1k1z9d.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs@HIDDEN> writes:

>> I'm just trying to ensure that the non-technical users have the help
>> they need to navigate this, and I remain convinced that the current
>> approach will be problematic for some of them.
>
> Do you know of such non-technical users?  If so, please send them our
> way, so they can help us improve the situation.

In my humble .emacs I have bunch of this kind of settings:

    (with-eval-after-load 'diff-mode
      (define-key diff-mode-map (kbd "M-o") nil))

To satisfy the byte-compiler [1], I added 

    (defvar diff-mode-map)

above the with-eval. Is that the way to refer to variables that might be
"free" at the point when I want to do the setting?

[1]: I wanted to understand if my .emacs is proper for lexical binding,
     I'm not byte-compiling my .emacs

--
Tomas




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 25 May 2026 21:40:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 25 17:40:10 2026
Received: from localhost ([127.0.0.1]:53003 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRd1u-00007h-EG
	for submit <at> debbugs.gnu.org; Mon, 25 May 2026 17:40:10 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:39018)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <rms@HIDDEN>) id 1wRd1s-00007G-9g
 for 81106 <at> debbugs.gnu.org; Mon, 25 May 2026 17:40:09 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <rms@HIDDEN>)
 id 1wRd1m-0001Mj-Cl; Mon, 25 May 2026 17:40:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From:
 mime-version; bh=YfpZh5VnLtKu0QI4/QR+adgicN+tk7yjCXp9SaZx36Y=; b=OqtoW+ojGclR
 jIarWomHhanWadQ+hGNuerQPEXqRDeoq9BqvKsqqx+nJD4sgp1qdm9C7bNKo2hMyKfLThg63FRvgP
 jXEb7Bpj75DR2p8T3zsRM9yCr2xqYhdnwEKaH0JrQSf/x7ixL6hgvIuOYzoZmeWTF15Qe/x5A2ZE9
 TX+4UwCu7nxpvb2l78IQw7HaXjo85Y787N8p13WdFR22JpxOSTjX5nnRo3ynE2awxuQA9b4P25i1Y
 QH/afTSmjTcHRe9tIERRCZNy6TwYkrjntX3TjdsW/XYa0VUBYr+uRTMH/qIUqWE7TNaNqZvCUJuHB
 jaoZloftAlJsQYfDFghIhQ==;
Received: from rms by fencepost.gnu.org with local (Exim 4.90_1)
 (envelope-from <rms@HIDDEN>)
 id 1wRd1l-0005hs-9p; Mon, 25 May 2026 17:40:01 -0400
Content-Type: text/plain; charset=Utf-8
From: Richard Stallman <rms@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
In-Reply-To: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN> (message from
 Phil Sainty on Sun, 24 May 2026 01:12:35 +1200)
Subject: Re: bug#81106: 31.0.50;
 [PATCH] Make "Missing `lexical-binding' cookie" functionality more
 user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
Message-Id: <E1wRd1l-0005hs-9p@HIDDEN>
Date: Mon, 25 May 2026 17:40:01 -0400
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: rms@HIDDEN
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > Emacs 31 generates a "Missing lexical-binding cookie" warning when
  > loading an elisp file which lacks that cookie, and I believe the
  > current implementation is not a user-friendly approach for the most
  > important audience.
  ...

Bravo for reasoning very clearly about this issue.  Your patch avoids
an important problem, so we should install this (or something similar)
now so that the problem never occurs.

The people who have encountered that code to add a cookie are nearly
all running code from the development repo.  Such people will probably
know how to convert their code to lexical binding.  Likewise for
people who run pretest releases.  They won't tell us about this
problem unless they are thoughtfully looking ahead.

We now have an opportunity to make sure the 31.1 release does not
expose non-wizards to a screw they won't understand.  Let's not waste
it.

-- 
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)






Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 25 May 2026 13:54:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 25 09:54:22 2026
Received: from localhost ([127.0.0.1]:47690 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRVl7-0000r6-QH
	for submit <at> debbugs.gnu.org; Mon, 25 May 2026 09:54:22 -0400
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:59823)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1wRVl3-0000qk-IV
 for 81106 <at> debbugs.gnu.org; Mon, 25 May 2026 09:54:20 -0400
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 3085C81BB1;
 Mon, 25 May 2026 09:54:11 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1779717250;
 bh=E9wkPf/llYBxyl55fUDcLg8zCMtNwEpn5B7o5m4ICYs=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=MRikfiNzMGxKXxubYP0xNMAsm68tcRIcGxq+Xf5HNeSILZkxl+hNmhf4n1kKbmbOh
 LZARvc4m6xrbt9giT389ixi83bHFhgT9rDm8HeKdzIqU8WN43XiAZoU6oLBw+dkvT6
 SkPV3gMWIQAN2NJfNdxJQSI1OiaagtO/EXIX3p5Ny18xcOcADzwQYa1crmIJQqoYKm
 CdbOERuZYe1ApmgFT+R42urkEQQKjPMyJUBWaj3gLyqMdFXM7GXDwqXgjIXeKFnhmn
 GbvwcMa/lcrvrCcw847lopLtlh3Yh2nR1HZjiqZnHYx4oZ15ZkKAj9M6UvYcew9vq8
 2sFzkz31aPpGA==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 4492E80904;
 Mon, 25 May 2026 09:54:10 -0400 (EDT)
Received: from pastel (104-195-197-162.cpe.teksavvy.com [104.195.197.162])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 0C73B12085F;
 Mon, 25 May 2026 09:54:10 -0400 (EDT)
From: Stefan Monnier <monnier@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <7152a140e8b70e55e7a591015541543c@HIDDEN>
Message-ID: <jwvldd7ioox.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN>
 <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN>
 <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN>
 <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
 <7152a140e8b70e55e7a591015541543c@HIDDEN>
Date: Mon, 25 May 2026 09:54:08 -0400
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.095 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> So there are actually two different cases:
>
> 1. Self-contained lisp libraries that the user has acquired
>    and which they never edit.
>
> 2. Their own init file and/or related files which they do
>    edit (in order to add individual snippets of elisp that
>    they pick up from the likes of Stack Overflow).

That's not a bad way to look at it.

> For (1) I continue to think we should not recommend converting
> these from the original dialect they were written for.
[...]
> Emacs can't distinguish (1) from (2), so I think the help we
> provide should describe both scenarios independently, with a
> different recommendation for each.

IME, even if the warning is the same, the reaction to the warning will
be different: in case (1), I'd expect the users to look for a more
recent version of that library and/or complain somewhere that library
FOO causes annoying warnings.  Which is indeed the better course of
action so the problem can be addressed once for all users of library FOO
by someone who has a better chance of knowing what they're doing.


=== Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 25 May 2026 12:16:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 25 08:16:04 2026
Received: from localhost ([127.0.0.1]:46846 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRUDz-0002Dv-IH
	for submit <at> debbugs.gnu.org; Mon, 25 May 2026 08:16:04 -0400
Received: from smtp-1.orcon.net.nz ([60.234.4.34]:59313)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wRUDx-0002DF-8I
 for 81106 <at> debbugs.gnu.org; Mon, 25 May 2026 08:16:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Transfer-Encoding:Content-Type:Message-ID:
 References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=0YE7C5599yWGAwx/ozZsk0nezFOMUqsADvGjL3IM7BI=; b=qFZG9LozLjbC7nAy28ORMgIyYJ
 bbcvFMA2HiipM9aa74ZsqXk+AOmYDH9PqEGDAmg0MUZpxJmKnZEWh0byR+P2jt5jam0mK627LZhJi
 +9NrCxPBWQCPV5MERswm8NFZIGXatifK9oHjpHJiDxqOJ+WwPm3gzWkfftQoa2jVTZmkVqwfVg5A5
 b8F94c7+LbJWg1SXBjlqDnPKXCi233AXMc8oBRdLShm7iQ2dVlS69D1oDSlv7sY9OUANFtQ60f49S
 on7hGMbvQ6vOSbVRktQLz/lP+DFLVMBb0k78kYjn6TYPnpwBxkUjSxHpkY/yYK0gI54Y7yigB+PHU
 AhMsO+DA==;
Received: from [10.253.37.70] (port=19041 helo=webmail.orcon.net.nz)
 by smtp-1.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wRUDn-0008Qx-Ne; Tue, 26 May 2026 00:15:52 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Tue, 26 May 2026 00:15:51 +1200
MIME-Version: 1.0
Date: Tue, 26 May 2026 00:15:51 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN> <b746e313f324025a879a26734e7d221b@HIDDEN>
 <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <7152a140e8b70e55e7a591015541543c@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81106
Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2026-05-25 15:02, Stefan Monnier wrote:
>> I guess that is really the crux of my argument -- *Why* are
>> we pushing users to convert files in their personal configs
>> to lexical binding?
> 
> So that next time they blindly copy a snippet from stack
> overflow, it will actually do what the snippet intended?

That's fair.  That's not the main scenario I've been concerned
about, but I can see that we'd want to account for that as well.

So there are actually two different cases:

1. Self-contained lisp libraries that the user has acquired
    and which they never edit.

2. Their own init file and/or related files which they do
    edit (in order to add individual snippets of elisp that
    they pick up from the likes of Stack Overflow).

I think most users will at most have only a handful of (2),
but they might easily have a large number of (1).

For (1) I continue to think we should not recommend converting
these from the original dialect they were written for.

For (2) I agree with you -- such files might contain a mixture
of code written for both dialects, but we have to pick one, so
the lexical-binding dialect would be the sensible recommendation
there.

Emacs can't distinguish (1) from (2), so I think the help we
provide should describe both scenarios independently, with a
different recommendation for each.

My approach would still be the patch I submitted, but with
modified help text to cover the distinct cases/recommendations.


-Phil




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 25 May 2026 03:02:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 24 23:02:18 2026
Received: from localhost ([127.0.0.1]:43372 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRLa4-0003wJ-0g
	for submit <at> debbugs.gnu.org; Sun, 24 May 2026 23:02:18 -0400
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:30414)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1wRLa0-0003uz-IJ
 for 81106 <at> debbugs.gnu.org; Sun, 24 May 2026 23:02:14 -0400
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id AE75F82192;
 Sun, 24 May 2026 23:02:06 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1779678125;
 bh=fUqJ1IGozyqJ+MdiNO4gqXBk9J9yrL5CXU96NcWjl18=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=e/I8j9Js6d2l+acGhgfMMCvRHcrL7XknOrJRNVm2Mnkh/luzKPSzHKbDeJrYlrccX
 Tv1aWQZIUGUiJagAg4udW/m1Yz3JnLNy5kmaWe7adsF+nmnzZHWa+aZlyev9lsMvhU
 W1tcNxveoFZzHn9V5L3F8RwRtQPRSeTCPqzH4TiYH0wgBuUv5YXxMgpe/1jLKuiEOY
 5ay3CjiBhMZ84vM87iMw0/iF1HgobF5PdxPfHyK9WL1PSJZV/GU4+7Yzlp+TKvD3V9
 4o8ilW+4MV9f27OQMPesbTvJrgISvGvFLJAofeAd0GF2V6TNX4JBUm5GI0uN2vtvXr
 aOQqdR5Xa+KcA==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id B301C80B36;
 Sun, 24 May 2026 23:02:05 -0400 (EDT)
Received: from pastel (104-195-197-162.cpe.teksavvy.com [104.195.197.162])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 7A37F120495;
 Sun, 24 May 2026 23:02:05 -0400 (EDT)
From: Stefan Monnier <monnier@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <b746e313f324025a879a26734e7d221b@HIDDEN>
Message-ID: <jwvecj0jj8p.fsf-monnier+emacs@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN>
 <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN>
 <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN>
 <b746e313f324025a879a26734e7d221b@HIDDEN>
Date: Sun, 24 May 2026 23:02:04 -0400
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.095 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: Eli Zaretskii <eliz@HIDDEN>, 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> 5. If they don't ignore the warning and use the command which
>    is currently suggested, there's a really strong chance that
>    they'll *enable* lexical binding for the file, because the
>    current command prioritises that outcome.

Yes, that's what we want.

> 6. Enabling lexical binding in files which don't support it is
>    the exact problem that the warning was supposed to prevent!
>    (but now it's liable to happen in Emacs 31 rather than the
>    future version of Emacs).

Not quite: the warning is there so that they know the change is coming,
to help them make the change on their own terms, and finally to help
them find the section of the Texinfo documentation that explains how to
make that change, in case their code needs adjustment.

Now, I tend to agree with you that we should have just changed the
default willy-nilly (that's what I pushed for), because it ends up
having a similar effect.  But Eli insisted that we do it in a less "cold
turkey" kind of way and ...well... he might have a point.

> I'm just trying to ensure that the non-technical users have the help
> they need to navigate this, and I remain convinced that the current
> approach will be problematic for some of them.

Do you know of such non-technical users?  If so, please send them our
way, so they can help us improve the situation.

> I think we have differing views on how likely it is, but in
> any case "low" is not "zero", and we have an option which can
> be expected to cause users zero problems!  Why would we want
> to instead lead them to the maybe-non-zero alternative?

The dynbound dialect of ELisp is deprecated and has been for some years
already.  Using `lexical-binding: nil` is a temporary workaround which
will silence the warning but not fix the underlying problem.  Users who
really want/need that will find it, IME, but I don't think encouraging
them down this path would be helpful to them.

> I guess that is really the crux of my argument -- *Why* are we pushing
> users to convert files in their personal configs to lexical binding?

So that next time they blindly copy a snippet from stack overflow, it
will actually do what the snippet intended?


=== Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 25 May 2026 02:13:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 24 22:13:09 2026
Received: from localhost ([127.0.0.1]:43053 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRKoW-0000l2-PY
	for submit <at> debbugs.gnu.org; Sun, 24 May 2026 22:13:09 -0400
Received: from smtp-1.orcon.net.nz ([60.234.4.34]:53759)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wRKoR-0000kI-C7
 for 81106 <at> debbugs.gnu.org; Sun, 24 May 2026 22:13:07 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Transfer-Encoding:Content-Type:Message-ID:
 References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=Vnk2X+VirBYyxyxc76NEbUUWkJQIVXyvTJzjN0gSxuI=; b=QWahl6sZXkpOMlnp1bUSRXGqZm
 ysNl2u0nv+f8hF/KX3sFhyDTEOBTqF5BWO3N7eH/xd8vwkKnHmVJ3MBWTKV698y1Fsqg7T6uSZVMi
 OVDO04LS6Egm+ahXobMKcoyEtMjQ4V325q26e8RlvXVXkaiK/T1Jv9cR0lPcseY+QbiTEIwSsz4Il
 +7gqLX7LBXm9cVkFmLbHiayVohd0IkNrEjMXSMSYg8jo3L1bNrrpgD6VTYkguAmbanXJ1iaCJs9if
 hKXtR2CmC+AtSbP2p7DJL20ncpcdOlsiXjk6wVr479oVR5P7Lcg85uNQLNKnirn/R6q9noYzDNRba
 l/NphoLw==;
Received: from [10.253.37.70] (port=35722 helo=webmail.orcon.net.nz)
 by smtp-1.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wRKo7-00055L-62; Mon, 25 May 2026 14:12:43 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Mon, 25 May 2026 14:12:42 +1200
MIME-Version: 1.0
Date: Mon, 25 May 2026 14:12:42 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <861pf0u7cu.fsf@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
 <861pf0u7cu.fsf@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <b746e313f324025a879a26734e7d221b@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

I feel this has lost focus a bit.  I'll try to summarise
my understanding/concern more succinctly:

1. Emacs 31 (like previous versions) runs files with no
    lexical-binding cookie under the dynamic binding dialect.

2. Emacs 31 also complains when it loads such a file,
    because a *future* version of Emacs will run such files
    under lexical binding.

3. The motivation for the warning is to help prevent files
    which were written for the dynamic binding dialect from
    suddenly (in the future) running under lexical binding.

4. If the user (continually) ignores the warning the file will
    continue work the way it was intended to work, under dynamic
    binding.

5. If they don't ignore the warning and use the command which
    is currently suggested, there's a really strong chance that
    they'll *enable* lexical binding for the file, because the
    current command prioritises that outcome.

6. Enabling lexical binding in files which don't support it is
    the exact problem that the warning was supposed to prevent!
    (but now it's liable to happen in Emacs 31 rather than the
    future version of Emacs).

7. Helping users to avoid those problems is a good thing, and
    there is currently no non-technical help to guide non-technical
    users through this process to ensure they get the correct
    outcome for their situation.


I'm just trying to ensure that the non-technical users have
the help they need to navigate this, and I remain convinced
that the current approach will be problematic for some of
them.



On 2026-05-25 03:58, Eli Zaretskii wrote:
> The age doesn't matter.  The probability of someone's
> customizations to hit this are very low.

I think we have differing views on how likely it is, but in
any case "low" is not "zero", and we have an option which can
be expected to cause users zero problems!  Why would we want
to instead lead them to the maybe-non-zero alternative?

I guess that is really the crux of my argument -- *Why* are
we pushing users to convert files in their personal configs
to lexical binding?  It doesn't benefit anyone.  At best it
doesn't hurt them, and at worst it does hurt them, and either
way the only person affected is the user with that file, so
what is the motivation for potentially causing them a problem
when we could so easily avoid it?



> Nevertheless, it aims to change a command that survived more than a
> year of testing by many users, collecting non-trivial feedback and
> forcing us to make non-trivial changes.  So please forgive me if I'm
> not too happy to change all that based on complaints from a single
> person who on top of that doesn't belong to the target audience of
> this warning and the command to go with it.

I can't believe that many people *compiling the master branch
of Emacs* fall into the target audience (for this issue) of
people who don't know much about Emacs lisp?

In any case, I'd love to hear from others (whether agreement
or disagreement) because there's certainly no purpose to the
discussion if I'm literally the only one who thinks there's a
problem here.


-Phil




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 24 May 2026 15:59:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 24 11:59:09 2026
Received: from localhost ([127.0.0.1]:36936 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRBEK-0007CU-H3
	for submit <at> debbugs.gnu.org; Sun, 24 May 2026 11:59:09 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:59484)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wRBEI-0007Bo-It
 for 81106 <at> debbugs.gnu.org; Sun, 24 May 2026 11:59:07 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wRBEC-0006gG-Nj; Sun, 24 May 2026 11:59:00 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=dZofE2FcfihXcSGf+a0CeKqJwuFTeYCYYbLQaz+kQ+c=; b=fCuzcR/TJOBJ1n+sZdIe
 Ub+e2cchwZBNEo6b1bFNoElAovGxBw0W926NTEh950N20VHsrcY+FptbZHTKhpEWz/9viQeYUjFFH
 +cC3mKfG9Mmf8YDCGJbemNvpY1+kpJ8zSz8qPpiYrnDH2fXOokBu1OtZrGuET6QEck0sTb+hQwMoN
 sL2LBE5i2X4sY7Y3xfZcKdUkb13KB3+/xGawl9UFJgBt34utZKTqPdxA0r33RZXQC+V21AyO9yNGR
 XYdzuAbWvV9mftb229SAXnY5pU36ElJMgDfa+LvXbN6sJrzpKXKHuSepyI6R3Dx2U+tNZVwWMGG92
 vG3ysJXJky5qHw==;
Date: Sun, 24 May 2026 18:58:57 +0300
Message-Id: <861pf0u7cu.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
In-Reply-To: <db43c77d61b7428a609584eb4205f04c@HIDDEN> (message from
 Phil Sainty on Mon, 25 May 2026 03:25:18 +1200)
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN> <db43c77d61b7428a609584eb4205f04c@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Mon, 25 May 2026 03:25:18 +1200
> From: Phil Sainty <psainty@HIDDEN>
> Cc: monnier@HIDDEN, 81106 <at> debbugs.gnu.org
> 
> On 2026-05-24 03:01, Eli Zaretskii wrote:
> >> It will cause harm because not all elisp files can be converted to
> >> lexical binding without modification.  Many can, but I certainly
> >> don't need to tell you that changes *are* needed in some cases.
> > 
> > Our conclusion was that _most_ do.  In fact, we had trouble coming
> > up with real-life examples of code that will not.
> 
> Really?  I mean... all it needs is for the file to implicitly
> be treating a variable as dynamic.

Yes, but those cases are exceedingly rare in user init files,
especially of users who don't understand Lisp enough to cope with
this.

> Heck, I have some files in my own config which only work under
> dynamic binding.

You hardly belong to the target audience of this feature.  Likewise
me.  If we are worth our salt, we've already added to all of our files
the lexical-binding cookie with the proper value.  This discussion is
not about us.

> It's not that they *can't* be converted to lexical binding; but they
> work just fine without, so I choose to put my efforts elsewhere.
> I'm confident that there must be MANY users with such files
> (possibly a minority, but not an insignificant number).

Yes, and so I expect you to add the cookies there already.

> > The two dialects are for almost all practical purposes identical,
> > especially when we are talking about stuff found in user
> > customizations by users who don't understand Lisp.  I have a
> > difficulty seeing any such code fail because of lexical-binding.
> 
> Users who don't understand lisp still tend to have a lot of lisp
> code in their config (that they did not write), and some of that
> code may be very old.

The age doesn't matter.  The probability of someone's customizations
to hit this are very low.

> > And please note that Emacs started warning about lack of
> > lexical-binding cookie in Emacs 30.1, which was released more
> > than a year ago.
> 
> Not at *load*-time it didn't.

Yes, it did.  That's how we found several issues with warnings we
needed to shut up (e.g., because those were files Emacs itself
created) early on when this was added.

> The load-time warning added in Emacs 31 is the problem, because
> it means that a warnings buffer with content like this will be
> displayed each and every time such a file is loaded:

This warning was added long ago, while Emacs 31 was in development,
and quite a lot of people who track the development version already
saw it.

>   ⛔ Warning (files): Missing ‘lexical-binding’ cookie in 
> "~/.emacs.d/lisp/foo.el".
>   You can add one with ‘M-x elisp-enable-lexical-binding RET’.
>   See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical 
> Binding’
>   for more information.
> 
> Users will want these new noisy warnings to stop happening, and
> the current approach will inevitably cause many of those users to
> do that by *enabling* lexical binding for the files in question,
> whether that was appropriate or not, and whether they understand
> what they've done or not.

We've discussed all that when this warning was added.  Feel free to
look up the discussions on the two Emacs mailing lists.

> > And please don't forget that the command elisp-enable-lexical-binding
> > allows to add the cookie with both a nil and non-nil value.  So the
> > way to do that does exist.
> 
> (a) The prefix argument UI is comparatively awkward, and requires
>      additional user effort to learn about.

Really?

  Make the current buffer use ‘lexical-binding’.
  With a prefix argument C-u, make the buffer use
  dynamic binding instead.

These are the two first sentences of the doc string.  Aren't you
exaggerating a bit?

> (b) The warning message doesn't describe how to do that.

By design, and I already explained why.

> (c) The warning message doesn't provide ANY non-technical help.

It sends one to the manual, because the details are too long for a doc
string.

> (d) If you just click the link, you're going to get lexical-binding:t.

Again, by design.

> And (e), elisp-enable-lexical-binding allowing for both values
> means that my patch isn't doing anything that was not already
> supported.

Nevertheless, it aims to change a command that survived more than a
year of testing by many users, collecting non-trivial feedback and
forcing us to make non-trivial changes.  So please forgive me if I'm
not too happy to change all that based on complaints from a single
person who on top of that doesn't belong to the target audience of
this warning and the command to go with it.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 24 May 2026 15:25:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 24 11:25:34 2026
Received: from localhost ([127.0.0.1]:36591 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRAhp-0004lN-QA
	for submit <at> debbugs.gnu.org; Sun, 24 May 2026 11:25:34 -0400
Received: from smtp-2.orcon.net.nz ([60.234.4.43]:53355)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wRAhl-0004iq-LR
 for 81106 <at> debbugs.gnu.org; Sun, 24 May 2026 11:25:31 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Transfer-Encoding:Content-Type:Message-ID:
 References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=po9ccfPlaO+saRyfJd7rWpMC3lJ/4Xn3nZjcyMf9Mrk=; b=m65L0XjxJ7JWOGgLtZ4K/VCVuv
 1JLzVjXa+V3pybeszyU8fs0NFWgvAJuV9w0yCmciW3RphFBU+iG2FRghAbFQrxoeYtpw67uSZqXCO
 s5yw489BGjxzXxgWqIdSaXdTdL7Msb0y1tqyEwR39odnJQPpcP5mP3TZRxw2iKpv+ebEYy5QB4cJ+
 VnQcclbQM6NRNWONHhr6feVHV0kREQIEHtpmARva2HtAZIf3wZCbl5ggWGTPFYiOo4fYQU0uVdu20
 ESh0zpLxazDjlVRCtP8XffFoYlxhWOWiJJgKNDKuBz9/k0EnkPYyIar2kVA68i16sWOi1PQ19tU0/
 2fW4ZEBA==;
Received: from [10.253.37.70] (port=15175 helo=webmail.orcon.net.nz)
 by smtp-2.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wRAha-0008La-EI; Mon, 25 May 2026 03:25:18 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Mon, 25 May 2026 03:25:18 +1200
MIME-Version: 1.0
Date: Mon, 25 May 2026 03:25:18 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <864ijyuq41.fsf@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
 <864ijyuq41.fsf@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <db43c77d61b7428a609584eb4205f04c@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On 2026-05-24 03:01, Eli Zaretskii wrote:
>> It will cause harm because not all elisp files can be converted to
>> lexical binding without modification.  Many can, but I certainly
>> don't need to tell you that changes *are* needed in some cases.
> 
> Our conclusion was that _most_ do.  In fact, we had trouble coming
> up with real-life examples of code that will not.

Really?  I mean... all it needs is for the file to implicitly
be treating a variable as dynamic.

Heck, I have some files in my own config which only work under
dynamic binding.  It's not that they *can't* be converted to
lexical binding; but they work just fine without, so I choose
to put my efforts elsewhere.  I'm confident that there must be
MANY users with such files (possibly a minority, but not an
insignificant number).


> The two dialects are for almost all practical purposes identical,
> especially when we are talking about stuff found in user
> customizations by users who don't understand Lisp.  I have a
> difficulty seeing any such code fail because of lexical-binding.

Users who don't understand lisp still tend to have a lot of lisp
code in their config (that they did not write), and some of that
code may be very old.


> And please note that Emacs started warning about lack of
> lexical-binding cookie in Emacs 30.1, which was released more
> than a year ago.

Not at *load*-time it didn't.

Byte-compilation warnings aren't the problem -- users who do
not write elisp will rarely be bothered by compilation warnings.

The load-time warning added in Emacs 31 is the problem, because
it means that a warnings buffer with content like this will be
displayed each and every time such a file is loaded:

  ⛔ Warning (files): Missing ‘lexical-binding’ cookie in 
"~/.emacs.d/lisp/foo.el".
  You can add one with ‘M-x elisp-enable-lexical-binding RET’.
  See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical 
Binding’
  for more information.

Users will want these new noisy warnings to stop happening, and
the current approach will inevitably cause many of those users to
do that by *enabling* lexical binding for the files in question,
whether that was appropriate or not, and whether they understand
what they've done or not.


> And please don't forget that the command elisp-enable-lexical-binding
> allows to add the cookie with both a nil and non-nil value.  So the
> way to do that does exist.

(a) The prefix argument UI is comparatively awkward, and requires
     additional user effort to learn about.
(b) The warning message doesn't describe how to do that.
(c) The warning message doesn't provide ANY non-technical help.
(d) If you just click the link, you're going to get lexical-binding:t.

And (e), elisp-enable-lexical-binding allowing for both values
means that my patch isn't doing anything that was not already
supported.  Both commands allow you to set the cookie to either
t or nil.  But my version does it in a way which is much, MUCH
friendlier to users who need this to all be explained to them.


-Phil




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 23 May 2026 15:10:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 11:10:47 2026
Received: from localhost ([127.0.0.1]:49274 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQnzz-0003Dq-Ih
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 11:10:47 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:55112)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wQnzv-0003DC-3S
 for 81106 <at> debbugs.gnu.org; Sat, 23 May 2026 11:10:46 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wQnzo-0003fx-C8; Sat, 23 May 2026 11:10:36 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=UhlAl3TRLpcLNlisQeJ0VkCBKcpOphFsYwed6YQkBc8=; b=IrlzghJntyUm
 Gd4UJbZazOjyf3y2JWBp9bBZDwrYiS6JJIQUImkZxUCMyqVZv5pLSrSFf0fl7DiijdKgBG9fvaLua
 A1D3yMVOpGlFQN0r6/7K0Q7kELeypN+8yJh/EqkrTwrHJYsD8S0ajpwTM6dk8y8R8AuzqrbbuXcHM
 wm/AlZl+y272T86Dxw/UQZrXwLqIcNFL0EtPJsTDzvoBjp5SttghzwWzaWShXZZPtGhOVTeoaP4Pw
 Imyb/9Q1qL6QFKwQY7Grz67rtAJO2Bgoifc92i3e6emN4vwR/WYQIN8hppoo8IzvmFkoU4B043urG
 YNZl82T141S9IDsEdFzlyQ==;
Date: Sat, 23 May 2026 18:10:34 +0300
Message-Id: <8633ziupp1.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
In-Reply-To: <83230cf4d1d33a20c0ebd17791760952@HIDDEN> (message from
 Phil Sainty on Sun, 24 May 2026 02:32:58 +1200)
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <83230cf4d1d33a20c0ebd17791760952@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Sun, 24 May 2026 02:32:58 +1200
> From: Phil Sainty <psainty@HIDDEN>
> Cc: Stefan Monnier <monnier@HIDDEN>, 81106 <at> debbugs.gnu.org
> 
> On 2026-05-24 01:22, Eli Zaretskii wrote:
> > I think we don't want to encourage, or make it easy, to add a
> > cookie with the nil value.
> 
> To my mind, that's the same as saying:
> 
> "I think we don't want to encourage, or make it easy, for files
> to be executed under the lisp dialect they were written for.
> (If that dialect is the old one.)"

The two dialects are for almost all practical purposes identical,
especially when we are talking about stuff found in user
customizations by users who don't understand Lisp.  I have a
difficulty seeing any such code fail because of lexical-binding.

And please don't forget that the command elisp-enable-lexical-binding
allows to add the cookie with both a nil and non-nil value.  So the
way to do that does exist.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 23 May 2026 15:01:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 11:01:48 2026
Received: from localhost ([127.0.0.1]:49141 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQnrH-0002Du-Sp
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 11:01:48 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:41182)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wQnrE-0002DI-MX
 for 81106 <at> debbugs.gnu.org; Sat, 23 May 2026 11:01:45 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wQnr8-0006hO-2x; Sat, 23 May 2026 11:01:38 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=eTRS9Mu5NydhumhGkLn9B05Xv4wGEDS5zfGFxkIRq94=; b=sCLgo0Z0RShq
 cdGqt9QWbqr4kDx+TPY0P5Wu1haXuS9c62mCxPGZs49ysNt88psYkesuuKN6AurFyplUd+edBU+uq
 G+Ex7aeIIb7QACuZ4sfROGEg03k/0fMCs26jaAAzGhMl6lV5veqSIpV1zVe2e0U4Xx/5F0B8Ekvcy
 D6T+dB66joSRJNuBkijQP6kNCty4c0+OUKNpgJagnakGKUDpDq64gtoNi7BAvhdAU4sPm50vYGf7l
 T2vE1FdrY6npSiQqIGryT1NCiWtASz6QdkoVbtlZi8LJ0wqpjCAvyuyAkzjHVGWKAKwZOpTnxTGIF
 NuHK2zBX/3cgDyZafu/c6g==;
Date: Sat, 23 May 2026 18:01:34 +0300
Message-Id: <864ijyuq41.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>
In-Reply-To: <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN> (message from
 Phil Sainty on Sun, 24 May 2026 02:20:33 +1200)
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN> <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Sun, 24 May 2026 02:20:33 +1200
> From: Phil Sainty <psainty@HIDDEN>
> Cc: Stefan Monnier <monnier@HIDDEN>, 81106 <at> debbugs.gnu.org
> 
> On 2026-05-24 01:22, Eli Zaretskii wrote:
> > You say (or imply) that the non-nil value could somehow be
> > harmful, but that was not our conclusion at the time we decided to
> > add this warning with its associated solution.  So please explain
> > why you think it could cause some harm in enough cases to be a
> > real problem.
> 
> It will cause harm because not all elisp files can be converted to
> lexical binding without modification.  Many can, but I certainly
> don't need to tell you that changes *are* needed in some cases.

Our conclusion was that _most_ do.  In fact, we had trouble coming up
with real-life examples of code that will not.

And please note that Emacs started warning about lack of
lexical-binding cookie in Emacs 30.1, which was released more than a
year ago.  We moved to suggesting to add the cookie only now, in Emacs
31.1.  So users had ample time to adjust to this change, see if their
code needs changes to work under lexical-binding, or add the nil
binding for it manually.

> My argument is that there is no benefit to those users changing
> those files in their personal configs to use lexical-binding.

And in most cases, there isn't any need for any changes.

> I don't understand how "not breaking configs" wouldn't be a top
> priority.

The goal here is to complete the slow but steady movement towards
using lexical-binding by default everywhere.  The warning is meant to
alert the users that they should decide soon what to do about that in
their files.

> (I do understand why we now need to insist that the cookie be
> *present* in all files, if a future version of Emacs will default
> lexical-binding being enabled; but I don't understand at all why
> we would apply any kind of pressure to users to change files to
> use lexical binding, when the users can't be expected to know what
> that will do to them.)

Because the need for nil is almost nonexistent.

> > In any case, it's too late for such changes at this stage of the
> > Emacs 31 development, as we intend to start the pretest soon, and
> > the time for such changes has long passed.
> 
> My patch is a very minor change which simply helps users to not
> shoot themselves in the foot.  I don't see why it wouldn't be a
> candidate for merging.

It's a significant change in behavior.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 23 May 2026 14:33:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 10:33:11 2026
Received: from localhost ([127.0.0.1]:48715 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQnPa-00082a-Jr
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 10:33:10 -0400
Received: from smtp-3.orcon.net.nz ([60.234.4.44]:33235)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wQnPW-000825-Tp
 for 81106 <at> debbugs.gnu.org; Sat, 23 May 2026 10:33:09 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Transfer-Encoding:Content-Type:Message-ID:
 References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=d4uklP8udi+VPqv4XT68eW+OKGfnEM3PAgrGAm98PsA=; b=N1yHcoPKcb6/Ai1ZBP8WJGKfwX
 Gs6hMuc1ZpYxxLDveu7prb/gdZGDD2cvVFOIgO7vU4NkPa7n3S++xdAhFnF/VTuGaUfSENXNwytr3
 MyeXUDGcM96W7C3e1pXykbivYGc5df/fZ6RAjOnqBv0hkQgDiqaN+/LpbcoipGycoCi6M1YD5U3rC
 fcWFZFB1Vq0jX6O0BhJoorm295/oYmhV3pJ+Y1bGNuUob0xAgTysHSczLs75uE+QXEPqxDNZud91f
 uteL7Kn3uxLY+eLiWKZTCWevqUDdBdavgt5q0ophEBKPnCLZWz4Fm8yp7mAz5f3NWyiiRQkGRlCcN
 kaGcl6iw==;
Received: from [10.253.37.70] (port=40636 helo=webmail.orcon.net.nz)
 by smtp-3.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wQnPO-0003wB-My; Sun, 24 May 2026 02:32:58 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Sun, 24 May 2026 02:32:58 +1200
MIME-Version: 1.0
Date: Sun, 24 May 2026 02:32:58 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <86a4tquup6.fsf@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <83230cf4d1d33a20c0ebd17791760952@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On 2026-05-24 01:22, Eli Zaretskii wrote:
> I think we don't want to encourage, or make it easy, to add a
> cookie with the nil value.

To my mind, that's the same as saying:

"I think we don't want to encourage, or make it easy, for files
to be executed under the lisp dialect they were written for.
(If that dialect is the old one.)"

I think we absolutely *do* want to both encourage and make it
easy to do that, because that's the dialect that is known to
run the code correctly.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 23 May 2026 14:20:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 10:20:48 2026
Received: from localhost ([127.0.0.1]:48545 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQnDc-0006wC-AH
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 10:20:48 -0400
Received: from smtp-1.orcon.net.nz ([60.234.4.34]:37205)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wQnDW-0006vh-Kc
 for 81106 <at> debbugs.gnu.org; Sat, 23 May 2026 10:20:46 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Transfer-Encoding:Content-Type:Message-ID:
 References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=rxSn6r5k1g89ozj6sWbH4F0TvT0wkoluDRgVLJp+0zU=; b=R6bSQu9ySNWEfrijJNfxBd3uFe
 fMNkFoOIAgNxeZ4dbGYSLxg0Wy+aZjUVgID6Yx0bvqIG+yt7EFXh0iXUD1wRqW99a8ihGcWFcsUVw
 wqoqUf4rlqfGgXyHqtuu6xa2mgYRMQO4d1D1qZHhK6K4sfruOW2cDS2PMr/ImDZrlSjIRRXOK6puB
 eNe0PC+AHTktut3K63hCG0y7mt/+ovGTQx6K8PJQaNd3up4M/IJjsmSEo+YqHWUiF+fbI+FXhuU/e
 JWo+7AcVyVL+kTHhNAGOhOPTPFHEiWtepRXmL2UQch2eMyRvqJvtPBarH98H6BylIUKoSiqy2Yatr
 B8DVSl1w==;
Received: from [10.253.37.70] (port=8889 helo=webmail.orcon.net.nz)
 by smtp-1.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>)
 id 1wQnDN-0004TC-Gy; Sun, 24 May 2026 02:20:33 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Sun, 24 May 2026 02:20:33 +1200
MIME-Version: 1.0
Date: Sun, 24 May 2026 02:20:33 +1200
From: Phil Sainty <psainty@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#81106: 31.0.50; [PATCH] Make "Missing `lexical-binding'
 cookie" functionality more user-friendly
In-Reply-To: <86a4tquup6.fsf@HIDDEN>
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
 <86a4tquup6.fsf@HIDDEN>
User-Agent: Orcon Webmail
Message-ID: <1b2d35092dbd89c36ad4a49cfa14b47b@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
X-GeoIP: --
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2026-05-24 01:22, Eli Zaretskii wrote:
> You say (or imply) that the non-nil value could somehow be
> harmful, but that was not our conclusion at the time we decided to
> add this warning with its associated solution.  So please explain
> why you think it could cause some harm in enough cases to be a
> real problem.

It will cause harm because not all elisp files can be converted to
lexical binding without modification.  Many can, but I certainly
don't need to tell you that changes *are* needed in some cases.

The files we should be considering here are those in the personal
configs of individual users who do not understand elisp.  Files
which have been working fine for years or even decades, with no
reason why they *shouldn't* continue to work correctly in Emacs 31
-- just provided that the lisp dialect isn't changed.

My argument is that there is no benefit to those users changing
those files in their personal configs to use lexical-binding.  The
worst case scenario is that things break and they don't know how to
fix it and they suffer a lot of inconvenience.  The best case
scenario is merely that nothing breaks -- but they get that same
outcome (without the risks) by NOT converting the files to use
lexical-binding.

I don't understand how "not breaking configs" wouldn't be a top
priority.

(I do understand why we now need to insist that the cookie be
*present* in all files, if a future version of Emacs will default
lexical-binding being enabled; but I don't understand at all why
we would apply any kind of pressure to users to change files to
use lexical binding, when the users can't be expected to know what
that will do to them.)


> In any case, it's too late for such changes at this stage of the
> Emacs 31 development, as we intend to start the pretest soon, and
> the time for such changes has long passed.

My patch is a very minor change which simply helps users to not
shoot themselves in the foot.  I don't see why it wouldn't be a
candidate for merging.


-Phil




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at 81106 <at> debbugs.gnu.org:


Received: (at 81106) by debbugs.gnu.org; 23 May 2026 13:22:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 09:22:42 2026
Received: from localhost ([127.0.0.1]:46607 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQmJN-0000p4-UU
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 09:22:42 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:39500)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1wQmJJ-0000oH-57
 for 81106 <at> debbugs.gnu.org; Sat, 23 May 2026 09:22:39 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1wQmJC-0002au-Mv; Sat, 23 May 2026 09:22:30 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=drsMsz6xs4ffgGrQAlnWWaBDutLTe8h5rhYFQxtwSyI=; b=oQnHU01Td8+F//+tMZ4O
 6DD7n4J2G+OgHyymKQjefoi8e64zC93PD3XNVQvdFXSqDXBGrGCfAvi6AMpPhnYBVBy6SS8lYXMrh
 z9yWlGdg/9k/bTH13ILKKz3J7N0vM5YZIld737H6x3olrOdQJIpMHeS1nbfadBuus570qcVyWA3ge
 ovjLhfmWtbXWewdlfctoHpdAam3J177OKsnKoviFT8ip0WXgqjzuAdHuXERzhZzd8RkdivL/7naaI
 1Pm0H0+G0wPfaiOH1ifRoXMPpUef7f9Xrw6irvvLgF1t4w6ZlHYAMbbzOxuOJbj3b5/4F3cvUsmnn
 zPcHw/oYs0LetQ==;
Date: Sat, 23 May 2026 16:22:29 +0300
Message-Id: <86a4tquup6.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN> (message from
 Phil Sainty on Sun, 24 May 2026 01:12:35 +1200)
Subject: Re: bug#81106: 31.0.50;
 [PATCH] Make "Missing `lexical-binding' cookie" functionality more
 user-friendly
References: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 81106
Cc: 81106 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Sun, 24 May 2026 01:12:35 +1200
> From: Phil Sainty <psainty@HIDDEN>
> 
> Emacs 31 generates a "Missing lexical-binding cookie" warning when
> loading an elisp file which lacks that cookie, and I believe the
> current implementation is not a user-friendly approach for the most
> important audience.
> 
> In fact I think the current approach is actually harmful.  The
> issue is that it railroads users into adding the cookie with the
> value `t', whereas in many situations users should be using the
> value `nil' in order to safely maintain the status quo.
> 
> It's a problem because this is a load-time warning, and therefore
> it will occur not only for elisp programmers who understand the
> warning, but also for users who neither understand elisp nor have
> any idea what lexical and dynamic binding are.  I believe the
> latter users are the most important audience, and that we need to
> protect them from doing something which might break their config
> in ways they will not understand or know how to fix (especially as
> such breakage may not become apparent to them until much later).
> 
> Adding the cookie as -*- lexical-binding: t; -*- is for elisp
> programmers who understand the difference and are prepared to
> implement the conversion and fix the bugs (if any; but there
> definitely can be bugs!).
> 
> Users who either don’t understand (in a lot of detail) what it all
> means, or who simply want to make the warning go away with the
> minimum of effort, need to set -*- lexical-binding: nil; -*-
> 
> As it is, when a user sees the warning and asks how to fix the
> problem, there's a really good chance (I've seen it happen many
> times) that some other well-meaning user will confidently tell them
> they need to add -*- lexical-binding: t; -*-, because for more than
> a decade that's the only version of the declaration which they've
> ever seen used, because until now there's never been any reason to
> specify it with a nil value.
> 
> Emacs itself should therefore make it as easy as possible for each
> user to do the thing which will be best for them personally, and it
> should provide clear information targeted at the users who will
> need it the most.
> 
> The current warning/buttons suggest `elisp-enable-lexical-binding'
> which either adds -*- lexical-binding: t -*- or else does nothing,
> which is very unhelpful for cases where adding -*- lexical-binding:
> nil -*- is desirable.  Furthermore the help provided is of a
> technical nature, aimed at elisp programmers.
> 
> I've attached a patch which I feel is a good improvement.

I think we don't want to encourage, or make it easy, to add a cookie
with the nil value.

You say (or imply) that the non-nil value could somehow be harmful,
but that was not our conclusion at the time we decided to add this
warning with its associated solution.  So please explain why you think
it could cause some harm in enough cases to be a real problem.

In any case, it's too late for such changes at this stage of the Emacs
31 development, as we intend to start the pretest soon, and the time
for such changes has long passed.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 23 May 2026 13:13:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 23 09:13:07 2026
Received: from localhost ([127.0.0.1]:46455 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wQmA6-0008Sr-Ms
	for submit <at> debbugs.gnu.org; Sat, 23 May 2026 09:13:07 -0400
Received: from lists1p.gnu.org ([2001:470:142::17]:51816)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <psainty@HIDDEN>)
 id 1wQmA1-0008S0-MS
 for submit <at> debbugs.gnu.org; Sat, 23 May 2026 09:13:04 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <psainty@HIDDEN>)
 id 1wQm9w-0006fX-2a
 for bug-gnu-emacs@HIDDEN; Sat, 23 May 2026 09:12:56 -0400
Received: from smtp-1.orcon.net.nz ([60.234.4.34])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <psainty@HIDDEN>)
 id 1wQm9t-0004lU-7v
 for bug-gnu-emacs@HIDDEN; Sat, 23 May 2026 09:12:55 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=orcon.net.nz; s=s1; h=Content-Type:Message-ID:Subject:To:From:Date:
 MIME-Version:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:
 Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc
 :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=mWWg3E1lr4O7SpZKxBEIMHdHWWpa6DuEJ4VSGgnMpSQ=; b=DZZz59NIHRPY9YLgV9knR7uic4
 cZxK+mVzSyC3BplaNbsgS4XDZgBtxyjEsRcwRXRs4M7NDIvikcQCXltkGqGCoNUFVKTJp7BK0ca13
 Yh56Huh10JlCd7ZVpFjQjU5S1zaofcT9ECy+nSSO3vm9u14ZB3VACcbCkZV5BLYzEAv28aSg3TG6N
 YklBOxc5RG4JVLRiM2FDWdmYJSZgayJPedqXyhEllbFb91e7peVUetX+V5EFzaESuuVAm55JsRyqO
 WQomeWp4DXz7JhOnG8zBGYJmyDwcfVLLrajPSEab8/51wuQQw4FH/4dj6PsbRwEN6dTzdwvwPwZIJ
 GGF/vA4Q==;
Received: from [10.253.37.70] (port=29609 helo=webmail.orcon.net.nz)
 by smtp-1.orcon.net.nz with esmtpa (Exim 4.90_1)
 (envelope-from <psainty@HIDDEN>) id 1wQm9c-0003d8-1Y
 for bug-gnu-emacs@HIDDEN; Sun, 24 May 2026 01:12:41 +1200
Received: from ip-116-251-163-208.as55850.net ([116.251.163.208])
 via [10.253.37.253] by webmail.orcon.net.nz
 with HTTP (HTTP/1.1 POST); Sun, 24 May 2026 01:12:35 +1200
MIME-Version: 1.0
Date: Sun, 24 May 2026 01:12:35 +1200
From: Phil Sainty <psainty@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 31.0.50; [PATCH] Make "Missing `lexical-binding' cookie"
 functionality more user-friendly
User-Agent: Orcon Webmail
Message-ID: <7a2b28e22da5ab50fa085cd6da306fc4@HIDDEN>
X-Sender: psainty@HIDDEN
Content-Type: multipart/mixed;
 boundary="=_699ec1a9efb11ca51450fbcd013fb6b6"
X-GeoIP: --
Received-SPF: pass client-ip=60.234.4.34; envelope-from=psainty@HIDDEN;
 helo=smtp-1.orcon.net.nz
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.4 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: Emacs 31 generates a "Missing lexical-binding cookie" warning
 when loading an elisp file which lacks that cookie, and I believe the current
 implementation is not a user-friendly approach for the most [...] 
 Content analysis details:   (1.4 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org]
 0.7 SPF_NEUTRAL            SPF: sender does not match SPF record (neutral)
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (psainty[at]orcon.net.nz)
 0.7 SPOOFED_FREEMAIL       No description available.
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.3 (/)

--=_699ec1a9efb11ca51450fbcd013fb6b6
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=UTF-8;
 format=flowed

Emacs 31 generates a "Missing lexical-binding cookie" warning when
loading an elisp file which lacks that cookie, and I believe the
current implementation is not a user-friendly approach for the most
important audience.

In fact I think the current approach is actually harmful.  The
issue is that it railroads users into adding the cookie with the
value `t', whereas in many situations users should be using the
value `nil' in order to safely maintain the status quo.

It's a problem because this is a load-time warning, and therefore
it will occur not only for elisp programmers who understand the
warning, but also for users who neither understand elisp nor have
any idea what lexical and dynamic binding are.  I believe the
latter users are the most important audience, and that we need to
protect them from doing something which might break their config
in ways they will not understand or know how to fix (especially as
such breakage may not become apparent to them until much later).

Adding the cookie as -*- lexical-binding: t; -*- is for elisp
programmers who understand the difference and are prepared to
implement the conversion and fix the bugs (if any; but there
definitely can be bugs!).

Users who either don’t understand (in a lot of detail) what it all
means, or who simply want to make the warning go away with the
minimum of effort, need to set -*- lexical-binding: nil; -*-

As it is, when a user sees the warning and asks how to fix the
problem, there's a really good chance (I've seen it happen many
times) that some other well-meaning user will confidently tell them
they need to add -*- lexical-binding: t; -*-, because for more than
a decade that's the only version of the declaration which they've
ever seen used, because until now there's never been any reason to
specify it with a nil value.

Emacs itself should therefore make it as easy as possible for each
user to do the thing which will be best for them personally, and it
should provide clear information targeted at the users who will
need it the most.

The current warning/buttons suggest `elisp-enable-lexical-binding'
which either adds -*- lexical-binding: t -*- or else does nothing,
which is very unhelpful for cases where adding -*- lexical-binding:
nil -*- is desirable.  Furthermore the help provided is of a
technical nature, aimed at elisp programmers.

I've attached a patch which I feel is a good improvement.


-Phil


In GNU Emacs 31.0.50 (build 15, x86_64-pc-linux-gnu, X toolkit, cairo
  version 1.16.0, Xaw scroll bars) of 2026-05-07 built on phil-lp
Repository revision: f20e3e473d10501ca9bc9f232ac7a0fd24ca72de
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 
11.0.12101004
System Description: Ubuntu 22.04.5 LTS

--=_699ec1a9efb11ca51450fbcd013fb6b6
Content-Transfer-Encoding: base64
Content-Type: text/x-diff;
 name=0001-Make-Missing-lexical-binding-cookie-functionality-mo.patch
Content-Disposition: attachment;
 filename=0001-Make-Missing-lexical-binding-cookie-functionality-mo.patch;
 size=4879

RnJvbSBlNjhlNjU0ZjcwOGQyMWQ5YmU2NjA3Y2JiODQ3YWZiYTJlMGI1YzFmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsIFNhaW50eSA8cHNhaW50eUBvcmNvbi5uZXQubno+CkRh
dGU6IFN1biwgMTAgTWF5IDIwMjYgMTI6MzU6MzAgKzEyMDAKU3ViamVjdDogW1BBVENIXSBNYWtl
ICJNaXNzaW5nIGBsZXhpY2FsLWJpbmRpbmcnIGNvb2tpZSIgZnVuY3Rpb25hbGl0eSBtb3JlCiB1
c2VyLWZyaWVuZGx5CgotLS0KIGxpc3AvZmlsZXMuZWwgICAgICAgICAgICAgICAgfCAgNCArLS0K
IGxpc3AvcHJvZ21vZGVzL2VsaXNwLW1vZGUuZWwgfCA1NCArKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgMiBkZWxl
dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL2ZpbGVzLmVsIGIvbGlzcC9maWxlcy5lbAppbmRl
eCA5YjFmYzA5ZmNmYS4uODU2NTZlMmYyY2IgMTAwNjQ0Ci0tLSBhL2xpc3AvZmlsZXMuZWwKKysr
IGIvbGlzcC9maWxlcy5lbApAQCAtNDMyNiwxMyArNDMyNiwxMyBAQCBpbnRlcm5hbC0tZ2V0LWRl
ZmF1bHQtbGV4aWNhbC1iaW5kaW5nCiBTZWUgYCVzJyBhbmQgYCVzJwogZm9yIG1vcmUgaW5mb3Jt
YXRpb24uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZQotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIChidXR0b25pemUgImVsaXNwLWVuYWJsZS1sZXhpY2FsLWJp
bmRpbmciCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGJ1dHRvbml6ZSAiZWxpc3At
YWRkLWxleGljYWwtYmluZGluZy1jb29raWUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAobGFtYmRhIChfKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAocG9wLXRvLWJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGlmIChidWZmZXJwIHNvdXJjZSkgc291cmNlCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaW5kLWZpbGUtbm9zZWxlY3Qg
c291cmNlKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChj
YWxsLWludGVyYWN0aXZlbHkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICMnZWxpc3AtZW5hYmxlLWxleGljYWwtYmluZGluZykpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjJ2VsaXNwLWFkZC1sZXhpY2FsLWJpbmRpbmct
Y29va2llKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5pbCAi
bW91c2UtMjogQWRkIGNvb2tpZSIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZ1
bmNhbGwgbWliICIoZWxpc3ApU2VsZWN0aW5nIExpc3AgRGlhbGVjdCIpCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGZ1bmNhbGwgbWliICIoZWxpc3ApQ29udmVydGluZyB0byBMZXhp
Y2FsIEJpbmRpbmciKSkKZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2VsaXNwLW1vZGUuZWwg
Yi9saXNwL3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsCmluZGV4IDVhNTUwYjMzMDE2Li5kNTZkN2Ex
YjRjMSAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMvZWxpc3AtbW9kZS5lbAorKysgYi9saXNw
L3Byb2dtb2Rlcy9lbGlzcC1tb2RlLmVsCkBAIC02ODAsNiArNjgwLDYwIEBAIGVtYWNzLWxpc3At
c2V0LWVsZWN0cmljLXRleHQtcGFpcnMKICAgICAgICAgICAoc2V0cS1sb2NhbCBlbGVjdHJpYy1w
YWlyLXRleHQtcGFpcnMgZWxpc3AtcGFpcnMpKSkpKQogICAocmVtb3ZlLWhvb2sgJ2VsZWN0cmlj
LXBhaXItbW9kZS1ob29rICMnZW1hY3MtbGlzcC1zZXQtZWxlY3RyaWMtdGV4dC1wYWlycykpCiAK
KyhkZWZ1biBlbGlzcC1hZGQtbGV4aWNhbC1iaW5kaW5nLWNvb2tpZSAoJm9wdGlvbmFsIG92ZXJy
aWRlKQorICAiQWRkIGZpbGUtbG9jYWwgbGV4aWNhbC1iaW5kaW5nIHZhcmlhYmxlIGZvciB0aGUg
Y3VycmVudCBidWZmZXIncyBmaWxlLgorQWxzbyBzZXRzIHRoZSBidWZmZXItbG9jYWwgdmFsdWUg
dG8gbWF0Y2guCisKK0lmIHRoZSBmaWxlIGhhcyBhIHByZS1leGlzdGluZyBjb29raWUgdGhlbiBw
cm9tcHQgdGhlIHVzZXIgdG8gY29uZmlybQordGhhdCB0aGV5IHdpc2ggdG8gdXBkYXRlIHRoZSBl
eGlzdGluZyB2YWx1ZSwgdW5sZXNzIE9WRVJSSURFIGlzIG5vbi1uaWwuIgorICAoaW50ZXJhY3Rp
dmUgIlAiKQorICAobGV0KiAoKHByb3AtdmFycyAoaGFjay1sb2NhbC12YXJpYWJsZXMtcHJvcC1s
aW5lKSkKKyAgICAgICAgIChjb29raWUgKGFzc3EgJ2xleGljYWwtYmluZGluZyBwcm9wLXZhcnMp
KQorICAgICAgICAgKGN1cnJlbnQgKGlmIGNvb2tpZSAoY2RyIGNvb2tpZSkgbGV4aWNhbC1iaW5k
aW5nKSkKKyAgICAgICAgICh1cGRhdGUgKG9yIChub3QgY29va2llKSBvdmVycmlkZSkpKQorICAg
ICh3aGVuIChhbmQgY29va2llIChub3Qgb3ZlcnJpZGUpKQorICAgICAgKHNldHEgdXBkYXRlICh5
LW9yLW4tcCAoZm9ybWF0ICJcCitBIGxleGljYWwtYmluZGluZyBjb29raWUgYWxyZWFkeSBleGlz
dHMgd2l0aCB2YWx1ZSBgJXMnLiAgT3ZlcnJpZGU/ICIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAoY2RyIGNvb2tpZSkpKSkpCisgICAgKGlmIChub3QgdXBkYXRlKQorICAg
ICAgICAobWVzc2FnZSAiS2VwdCBleGlzdGluZyBsZXhpY2FsLWJpbmRpbmcgY29va2llIikKKyAg
ICAgIChwY2FzZSAoY2FkciAocmVhZC1tdWx0aXBsZS1jaG9pY2UKKyAgICAgICAgICAgICAgICAg
ICAgKGlmIGN1cnJlbnQKKyAgICAgICAgICAgICAgICAgICAgICAgICJLZWVwIGxleGljYWwgYmlu
ZGluZyBvciBjaGFuZ2UgdG8gZHluYW1pYyBiaW5kaW5nPyIKKyAgICAgICAgICAgICAgICAgICAg
ICAiS2VlcCBkeW5hbWljIGJpbmRpbmcgb3IgY2hhbmdlIHRvIGxleGljYWwgYmluZGluZz8iKQor
ICAgICAgICAgICAgICAgICAgICAoaWYgY3VycmVudAorICAgICAgICAgICAgICAgICAgICAgICAg
JygoP2wgImxleGljYWwiICJVc2UgbGV4aWNhbCBiaW5kaW5nIikKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKD9kICJkeW5hbWljIiAiVXNlIGR5bmFtaWMgYmluZGluZyBvbmx5IikpCisgICAg
ICAgICAgICAgICAgICAgICAgJygoP2QgImR5bmFtaWMiICJVc2UgZHluYW1pYyBiaW5kaW5nIG9u
bHkiKQorICAgICAgICAgICAgICAgICAgICAgICAgKD9sICJsZXhpY2FsIiAiVXNlIGxleGljYWwg
YmluZGluZyIpKSkKKyAgICAgICAgICAgICAgICAgICAgIlwKK1RoZSAtKi0gbGV4aWNhbC1iaW5k
aW5nIC0qLSBjb29raWUgb24gdGhlIGZpcnN0IGxpbmUgb2YgYW4gZW1hY3MgbGlzcAorZmlsZSBk
ZWNsYXJlcyB3aGljaCBkaWFsZWN0IG9mIGVtYWNzIGxpc3AgdGhlIGNvZGUgaXMgd3JpdHRlbiBm
b3I6IHRoZQorbmV3ZXIgbGV4aWNhbCBiaW5kaW5nIGRpYWxlY3QgaWYgdGhlIHZhbHVlIGlzIGB0
Jywgb3IgdGhlIG9sZGVyIGR5bmFtaWMKK2JpbmRpbmcgZGlhbGVjdCBpZiB0aGUgdmFsdWUgaXMg
YG5pbCcuCisKK0J5IGRlZmF1bHQsIGEgZmlsZSB3aGljaCBsYWNrcyB0aGlzIGNvb2tpZSB1c2Vz
IGR5bmFtaWMgYmluZGluZyBvbmx5OworYnV0IHRoaXMgZGVmYXVsdCBtYXkgY2hhbmdlIGluIGEg
ZnV0dXJlIHJlbGVhc2UsIGFuZCBzbyB0aGUgY29va2llCitzaG91bGQgYmUgaW5jbHVkZWQgaW4g
YWxsIGVtYWNzIGxpc3AgZmlsZXMgdG8gZW5zdXJlIHRoYXQgYSBmaWxlIGNhbm5vdAorY2hhbmdl
IGRpYWxlY3RzIHVuZXhwZWN0ZWRseSBpbiBmdXR1cmUuCisKK0Nob29zZSAoZCl5bmFtaWMgdG8g
YWRkIHRoZSBtaXNzaW5nIGNvb2tpZSB3aGlsZSBtYWludGFpbmluZyB0aGUgY29kZSdzCitjdXJy
ZW50IGJlaGF2aW9yICh3aXRoIG5vIG90aGVyIGNoYW5nZXMgcmVxdWlyZWQpLiAgQ2hvb3NlIChs
KWV4aWNhbCB0bworY2hhbmdlIHRvIGxleGljYWwgYmluZGluZyAodGhpcyBtYXkgbmVjZXNzaXRh
dGUgb3RoZXIgY29kZSBjaGFuZ2VzOyBzZWUKK2luZm8gbm9kZSBgKGVsaXNwKUNvbnZlcnRpbmcg
dG8gTGV4aWNhbCBCaW5kaW5nJyBmb3IgZGV0YWlscykuCisKK0xpc3AgYXV0aG9ycyBhcmUgZW5j
b3VyYWdlZCB0byBjb252ZXJ0IHRoZWlyIGNvZGUgdG8gdGhlIG1vZGVybiBsZXhpY2FsCitiaW5k
aW5nIGRpYWxlY3QuICBVc2VycyB3aG8gYXJlIG5vdCBzdXJlIHdoYXQgdGhpcyBtZWFucyBzaG91
bGQga2VlcCB0aGUKK2N1cnJlbnQgZGlhbGVjdCB0byBhdm9pZCBhbnkgdW5pbnRlbmRlZCBjaGFu
Z2VzIGluIGJlaGF2aW9yLgorCitTZWUgaW5mbyBub2RlIGAoZWxpc3ApU2VsZWN0aW5nIExpc3Ag
RGlhbGVjdCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIikpCisgICAgICAgICgiZHluYW1pYyIKKyAg
ICAgICAgIChzZXRxLWxvY2FsIGxleGljYWwtYmluZGluZyBuaWwpCisgICAgICAgICAoYWRkLWZp
bGUtbG9jYWwtdmFyaWFibGUtcHJvcC1saW5lICdsZXhpY2FsLWJpbmRpbmcgbmlsKSkKKyAgICAg
ICAgKCJsZXhpY2FsIgorICAgICAgICAgKHNldHEtbG9jYWwgbGV4aWNhbC1iaW5kaW5nIHQpCisg
ICAgICAgICAoYWRkLWZpbGUtbG9jYWwtdmFyaWFibGUtcHJvcC1saW5lICdsZXhpY2FsLWJpbmRp
bmcgdCkpKSkpKQorCiAoZGVmdW4gZWxpc3AtZW5hYmxlLWxleGljYWwtYmluZGluZyAoJm9wdGlv
bmFsIGludGVyYWN0aXZlKQogICAiTWFrZSB0aGUgY3VycmVudCBidWZmZXIgdXNlIGBsZXhpY2Fs
LWJpbmRpbmcnLgogV2l0aCBhIHByZWZpeCBhcmd1bWVudCBcXFt1bml2ZXJzYWwtYXJndW1lbnRd
LCBtYWtlIHRoZSBidWZmZXIgdXNlCi0tIAoyLjM0LjEKCg==
--=_699ec1a9efb11ca51450fbcd013fb6b6--




Acknowledgement sent to Phil Sainty <psainty@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#81106; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sat, 30 May 2026 12:00:02 UTC

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