From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Vibhav Pant Newsgroups: gmane.emacs.bugs Subject: bug#60974: 30.0.50; byte-compile-preprocess mutates self evaluating forms in expanded macro bodies Date: Thu, 02 Feb 2023 18:45:56 +0530 Message-ID: References: <6eb5f27bf591c3d52766d8b9da46e7301f2ff0ab.camel@gmail.com> <5ccd0d1f9f64a5fd20e5403a07b06d6074b6c8f6.camel@gmail.com> <2d72943db9995af6a98744f4a4da3cef98773b86.camel@gmail.com> <22ab766cb75ceedac14976e02aebe02711ef6aad.camel@gmail.com> <51cc5308368f09c02a315970275bd3968008c421.camel@gmail.com> <0883890C-6FB6-4501-867A-6684CBA3D9F4@acm.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-/ECLg9NpEJBH3x6YMeun" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="39206"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Evolution 3.46.3 Cc: Stefan Monnier , 60974 <60974@debbugs.gnu.org> To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Feb 02 14:17:37 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pNZT5-0009uu-6g for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 02 Feb 2023 14:17:35 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pNZSo-0005O6-K3; Thu, 02 Feb 2023 08:17:18 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pNZSZ-00051k-DN for bug-gnu-emacs@gnu.org; Thu, 02 Feb 2023 08:17:16 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pNZSX-0008IS-Rd for bug-gnu-emacs@gnu.org; Thu, 02 Feb 2023 08:17:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pNZSX-0001un-KN for bug-gnu-emacs@gnu.org; Thu, 02 Feb 2023 08:17:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Vibhav Pant Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 02 Feb 2023 13:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60974 X-GNU-PR-Package: emacs Original-Received: via spool by 60974-submit@debbugs.gnu.org id=B60974.16753437737301 (code B ref 60974); Thu, 02 Feb 2023 13:17:01 +0000 Original-Received: (at 60974) by debbugs.gnu.org; 2 Feb 2023 13:16:13 +0000 Original-Received: from localhost ([127.0.0.1]:32882 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pNZRl-0001th-0W for submit@debbugs.gnu.org; Thu, 02 Feb 2023 08:16:13 -0500 Original-Received: from mail-wr1-f54.google.com ([209.85.221.54]:37717) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pNZRj-0001tU-7b for 60974@debbugs.gnu.org; Thu, 02 Feb 2023 08:16:11 -0500 Original-Received: by mail-wr1-f54.google.com with SMTP id q10so1680429wrm.4 for <60974@debbugs.gnu.org>; Thu, 02 Feb 2023 05:16:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:from:to:cc:subject:date:message-id:reply-to; bh=HGfEsnk32SPcCPlBKV5C4LdcVLARcrg6RuW0IFqSFPI=; b=qT/CNn8kUojuS5uGZxK+NJVVMZ8T8jl1dGDKJvlMcolEPSnmv9X80Ov1/qgSgFRg1x FLu1hM0ZQ/g/9JLFPmoV+zyr+fzcvI8vk06tl0DIzVo+m/4B4F2drInz3z8k+20Eu0mr K3MFFwdc0xjLo/IF8Cth/m5Bx96NpSX77HgdKPpscEO0D3b3rpsuDDpL+W/5lRz2kZax tfG6jJ/0hEseG6toz9IBQT4clb+Eyb+ter+mE8I7Pd23+MarIsbIDYaotHCVGbNv5/5J Vw0tDOdAOwYexW/hoZbF0gyfSxs+Th3vrUCgVW9VoZ24mQVkWVWj/uvn2s75i15ZsFGV P47Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=HGfEsnk32SPcCPlBKV5C4LdcVLARcrg6RuW0IFqSFPI=; b=o6rd5zsYCzEQ19GVOPhtfVAcA7A6hixjLecxLigxjvDyb+povcMVIR1po/YVtn2o4L 7ezXX7XFrOp32+ioAbR/GZcM8Lg3SEgmV7rNHgmHLFJf7bmLDpITzfoXLiFdoiuicklp 50eZkPhiCjD4dM6y0LI/GPJdaq/Izo3GdutZddolm5mwdhcQIHZ4wNm+A2YOoybblTwu 7G1XlEpnHzSX5cmVwM71X+LSG6A1gXHhoRHkofP9QDdo7F88KpaMxuDjmQNqRWqd2qtA MUOi+DPO42HTQ83GQOCFHDWocSC9klcVKBI84EgoqrX5aQ5ixKZrIgkUfooIYExI/pZi yMxw== X-Gm-Message-State: AO0yUKW+C+0lEJ++VB11h43pu2PDHKRF2GudKTv12OYNfBUbOoMDHD5P h9hLegaM0rniaVqAqbQRH8g= X-Google-Smtp-Source: AK7set8oYT2ZirjFPMitmln4gYURMzEMmSLh/gc1d70WimqVf3acmlR/+aO/Br2yZ9b6BdzOgNZdvQ== X-Received: by 2002:a5d:610a:0:b0:2bf:e695:82a7 with SMTP id v10-20020a5d610a000000b002bfe69582a7mr4797738wrt.13.1675343765121; Thu, 02 Feb 2023 05:16:05 -0800 (PST) Original-Received: from vibhavp-mbp.local ([182.69.182.68]) by smtp.gmail.com with ESMTPSA id d7-20020a056000114700b00241fab5a296sm19723498wrx.40.2023.02.02.05.16.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Feb 2023 05:16:04 -0800 (PST) In-Reply-To: <0883890C-6FB6-4501-867A-6684CBA3D9F4@acm.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:254651 Archived-At: --=-/ECLg9NpEJBH3x6YMeun Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, 2023-02-02 at 13:39 +0100, Mattias Engdeg=C3=A5rd wrote: > [ trimmed emacs-devel ] >=20 > 2 feb. 2023 kl. 13.35 skrev Vibhav Pant : >=20 > > Sure. Do we need to install this to the release branch? The bug > > doesn't > > really break anything AFAIK, so I dont think it's really a release > > blocker. >=20 > In any case there should be a test. (Not implying that you needed to > be reminded, of course.) >=20 I had thought of adding a test a while back, but I'm not sure how we'd do it. The immutability of self evaluating literals is only enforced for data in purespace. One potential way to achieve this would be a test-case that depends on a macro defined in purespace, which expands to a body that is not byte-compiled, but that doesn't sound like a great approach. Alternatively, we could define a macro, store its expanded form in a variable and run it through `cconv-closure-convert`, checking afterwards whether the original value changed or not. It feels a little more reliable, but writing it might be a little tricky. (Shameless plug for scratch/comp-static-data, which does enforce immutability in natively compiled code, and has new tests that check for exactly this). --=20 Vibhav Pant vibhavp@gmail.com GPG: 7ED1 D48C 513C A024 BE3A 785F E3FB 28CB 6AB5 9598 --=-/ECLg9NpEJBH3x6YMeun Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEEftHUjFE8oCS+Onhf4/soy2q1lZgFAmPbt4wACgkQ4/soy2q1 lZi5PQf/Vb8Rvxug7iUwdLsfMGoBuJVeFEwJkJqclvnph93mB7S8JpEGNzd2rI8Q QJVG8Irrp0XgzmZVxHxqcUp2jv/190ryeDuqyA/lrwdFkanFgic/Sew99D9PqNv3 vX6s2+2XBqh+K/MlPLSqKLV4Sd3yklIU+pKRmlddV6HSw84BcRkqRAVZ+L9ofMH7 dcJL3H3vy3bB1G4aJAURZPTefiTw/EXfRNMVUPzN3j0SZiw0kk5VMRThU9Up1jRu AMd64QIyaLoN2hvaRJZTKXuHl1EGpUNTTRtrfj2eFUgVLhKkyAR3+P19ALlIofMI zTrB6pgq9dE6DZFEizgoT8ethd7Uqw== =ASxF -----END PGP SIGNATURE----- --=-/ECLg9NpEJBH3x6YMeun--