GNU bug report logs - #78813
feature/igc: [PATCH] Make the array face_attr_sym readonly

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: Helmut Eller <eller.helmut@HIDDEN>; Keywords: patch; Done: Eli Zaretskii <eliz@HIDDEN>; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 78813-done <at> debbugs.gnu.org:


Received: (at 78813-done) by debbugs.gnu.org; 23 Jun 2025 11:15:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 23 07:15:32 2025
Received: from localhost ([127.0.0.1]:54589 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTf97-00065o-Rd
	for submit <at> debbugs.gnu.org; Mon, 23 Jun 2025 07:15:31 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:46114)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uTf94-00061M-9P
 for 78813-done <at> debbugs.gnu.org; Mon, 23 Jun 2025 07:15:27 -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 1uTf8y-00083t-Em; Mon, 23 Jun 2025 07:15:20 -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=k73IdHA4voHFyN/03gfjNqy+sYrr5M0jcFE6yKYt+tE=; b=dvMlDWojhavm
 D4ZcZoQcmQUA9CqQD42h3fNH2vgNYrEavOrv1kK4qIcuPNpXx5dG7HY7hZ6IkHxNnNqh0VZUFmkFN
 VbVfTZFJ98Y1x9j7MZGJBr7FTuZBi0BStSJCF2wQq2f5yXU5Ql0UYRLhXKZHQRm2MUj8IoGpuOI7j
 YR519kRo37nlbRatbTxjg6fSs5HCvzw6f3Sy3UHc9rT1ezY9IEddiLdXpbi4MLOALaDgQFh2mvFkt
 NHakdFIUcfsgd1N94HzzowhUUiJKJRNRVb+OYV+5Vl+Dj2Lj0i8oquMR7MMTQLotmCEzgMeArv2tD
 iYitIJm/Z6thb0KOlp4ZDg==;
Date: Mon, 23 Jun 2025 14:15:15 +0300
Message-Id: <86pleug14s.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Helmut Eller <eller.helmut@HIDDEN>
In-Reply-To: <87qzzbmy53.fsf@HIDDEN> (message from Helmut Eller on Sun, 22
 Jun 2025 20:25:44 +0200)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87wm96mfl7.fsf@HIDDEN>
 <86sejtk2fq.fsf@HIDDEN> <87qzzbmy53.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813-done
Cc: 78813-done <at> debbugs.gnu.org, pipcet@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 (---)

> From: Helmut Eller <eller.helmut@HIDDEN>
> Cc: pipcet@HIDDEN,  78813 <at> debbugs.gnu.org
> Date: Sun, 22 Jun 2025 20:25:44 +0200
> 
> On Sat, Jun 21 2025, Eli Zaretskii wrote:
> 
> > Initialization using C initializers is used for simple values like
> > scalars.  The LISP_INITIALLY stuff should be used only very sparingly
> > and if strictly necessary, because it is very confusing at first
> > sight.  So I'd very much prefer that we kept the current conventions
> > for initializing complex variables, especially variables with Lisp
> > values.
> 
> This doesn't make much sense to me.  But your project, your rules.
> 
> So you can close this bug.

Done, thanks.




Notification sent to Helmut Eller <eller.helmut@HIDDEN>:
bug acknowledged by developer. Full text available.
Reply sent to Eli Zaretskii <eliz@HIDDEN>:
You have taken responsibility. Full text available.

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


Received: (at 78813) by debbugs.gnu.org; 22 Jun 2025 18:25:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 22 14:25:55 2025
Received: from localhost ([127.0.0.1]:49747 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTPO6-0001Ho-8t
	for submit <at> debbugs.gnu.org; Sun, 22 Jun 2025 14:25:55 -0400
Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:45383)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <eller.helmut@HIDDEN>)
 id 1uTPO4-0001GN-2q
 for 78813 <at> debbugs.gnu.org; Sun, 22 Jun 2025 14:25:52 -0400
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-60702d77c60so6727913a12.3
 for <78813 <at> debbugs.gnu.org>; Sun, 22 Jun 2025 11:25:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1750616746; x=1751221546; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=BPis5iUUCSULNFg/8gDzWd5y0rKbS6DQ64YV4i27vBA=;
 b=cqiX2xrrexsRLzVMhT8s+gfiQcYfb8bkWSjTEiEWRTJuHJ9zKuN/NsQM+7fXrRA7QE
 hxsBOcDZkszXCo3W1UfWtn2bMeiOoNDvzYaK4cZndl8FZSc87mjoNqk92m449iJypVk1
 RPpe4eUuSYB3NaSMNxHZdypodWyZUo8W2jyCwcrh7NtPWFn9InNBjqEuQczp9ECr4ftU
 g756sVfIiSrKzIfEXIDah/riB9rZUhb9hxc5dq8jbDM8mEkLjrTOxFGyTD1X52niPGjp
 y+oh+eZvedFqPqoU5k4+2Xex8Rk2pCiV5QxY/ZliVltmMTMYnmz4o8GFVPITu5MnYg+A
 PLog==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1750616746; x=1751221546;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=BPis5iUUCSULNFg/8gDzWd5y0rKbS6DQ64YV4i27vBA=;
 b=Po2tYrSyPvurh+gsX8df8rt+UrQQ9ml4URDjrryDeGcAOjkkyNxQc7oIRbsS2Mpa7v
 +8ZatBCz8dndsgYpEq/S7SpC/O1lqHkmkTWREufpkm1vb+HdcPpRhzrJcqjFITfJuYQS
 nbb4q8+cUgaXWf1h0oLDFj34QHnyEa1NDTizeH8KzIzxI05V9njsnlV7GWNCiKZPdcnN
 IsEj0lNUBP7avrtqNHNVqoLiSq7vVNiSjFaXn5+gcE6IO4QL8An8mbJ4+dfrsO3L4BjT
 w93dG8ULTBXAWkiM14n71+U3i5euqOgXHaifVg3ZapFHv2kGlspscA9cLWqT25jcXlMK
 kN4g==
X-Forwarded-Encrypted: i=1;
 AJvYcCVzmBpE2OnrPB1sP2UPVl4R/kbWwb4XfyklpZxf8kLCenBlZEinFTD8nc7efSBXucWF1TYe1A==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxXopzYEB/xribd9+Mpr+nPYwL1jsSn8KYHgib9tEkgc0nXw3QY
 l01wOKV1MxBC8nuRm7OnZE23JWNSril0fTVCeLCvNJHoJMbO8F/QzHBPG+p2SQ==
X-Gm-Gg: ASbGncsM3hCAudVrzwbOQUfG3l9bnfB60LQlneY7MtSrGwt35L4sojYynTqzbhjt64g
 WVZtUPSSUZPz40xLXxbfIv0YeO18xn4wmH068yUiZeWQRQRq0dEECFARFbvgGY1GZxQSGaKRtKG
 2SCZo/HbrbLsxRYUNYQAnW5oAulj3blGuxIJfp7WTiXaVltTN8Vl6pWf5bVfCuxMlsncP0RbUOw
 UfdvQDmXDRM+uqRpPkXQdVwO+tPBwRucfhDPRzygRmIourCZjbTP5pBKCnoSr9A+BQwgRNyzNXZ
 5GXtR6TY1reDsSQDE3rUtlf75HPfJYzvCY1YH1vYcwjN/foVEbn2g6U9eAf5p6yOqpf7lR6pYLb
 h3I9KKZl8O+yy3oS5Ik8=
X-Google-Smtp-Source: AGHT+IEqeuTwPzG0776hmP1KF6ic/EtAeGgbRzQkDfLbeDSxB0Ah2Wn5CUkL3kveKkOF9vDBfgpfSg==
X-Received: by 2002:a05:6402:42cb:b0:602:17a1:c672 with SMTP id
 4fb4d7f45d1cf-60a1ccb47a3mr9201962a12.8.1750616745577; 
 Sun, 22 Jun 2025 11:25:45 -0700 (PDT)
Received: from caladan (dial-184179.pool.broadband44.net. [212.46.184.179])
 by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-60b622cd926sm4025768a12.21.2025.06.22.11.25.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 22 Jun 2025 11:25:45 -0700 (PDT)
From: Helmut Eller <eller.helmut@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
In-Reply-To: <86sejtk2fq.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87wm96mfl7.fsf@HIDDEN>
 <86sejtk2fq.fsf@HIDDEN>
Date: Sun, 22 Jun 2025 20:25:44 +0200
Message-ID: <87qzzbmy53.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, pipcet@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 Sat, Jun 21 2025, Eli Zaretskii wrote:

>> From: Helmut Eller <eller.helmut@HIDDEN>
>> Cc: Pip Cet <pipcet@HIDDEN>,  78813 <at> debbugs.gnu.org
>> Date: Fri, 20 Jun 2025 20:29:40 +0200
>> 
>> On Fri, Jun 20 2025, Eli Zaretskii wrote:
>> 
>> > Thanks, but I asked about this change on its own, not as part of some
>> > effort (which AFAIU is on the igc branch, not on master).  IOW,
>> > suppose we release Emacs 31 without the MPS support (something I hope
>> > will not need to happen, but just for the sake of this sub-thread):
>> > what would that change give us, considering the fact that this code
>> > was there since Emacs 21?
>> 
>> It would add some minor protection against accidental modifications of
>> the face_attr_sym array.
>
> How can it be accidentally modified?  It's a static array not exposed
> to Lisp.

I was thinking about accidental modification from C.

[...]
> Initialization using C initializers is used for simple values like
> scalars.  The LISP_INITIALLY stuff should be used only very sparingly
> and if strictly necessary, because it is very confusing at first
> sight.  So I'd very much prefer that we kept the current conventions
> for initializing complex variables, especially variables with Lisp
> values.

This doesn't make much sense to me.  But your project, your rules.

So you can close this bug.

Helmut




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

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


Received: (at 78813) by debbugs.gnu.org; 22 Jun 2025 07:17:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 22 03:17:50 2025
Received: from localhost ([127.0.0.1]:46349 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTExa-0006sJ-BY
	for submit <at> debbugs.gnu.org; Sun, 22 Jun 2025 03:17:50 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:38194)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uTExX-0006s1-Qe
 for 78813 <at> debbugs.gnu.org; Sun, 22 Jun 2025 03:17:48 -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 1uTExS-0007I5-Hh; Sun, 22 Jun 2025 03:17:42 -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=BsrDHa3YpHVRfNmGc7zFdWvTvx1Omr2pnJe1UsxaBNo=; b=UvFX5LbCI3Ov
 2IPp5BMmudBZW/w41Yw+P6l3QNXlf+2XB6Y84GnR8zRNNiYuaC+7odbFHfdtkW7VBIQxJhL1F+k27
 HlyaS5K1/uDoTrufYAEtIXQPi7Pdvi+TWAyVzOj4YKfbxtnyzqjEj2GVlg/IoeMBfQfEnHhqbI7Li
 4BaaJc7DXBd4CjrSRE0KvSI7ZLQHv6VJNP2GubzG1CwOXr5zlm2dxqY9ZZIwHfkZv0LJxo5emagxL
 8W7KdWxbAT7bbup2ftWrF7+42+H84t/9YzfKnYcHdn6jq/jfQci/Ob8G3wdstl8eOqddGZC6zpOeP
 lKSN02eJdWmR24hofd48DA==;
Date: Sun, 22 Jun 2025 10:17:39 +0300
Message-Id: <86sejsgs8c.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
In-Reply-To: <87wm945lpd.fsf@HIDDEN> (message from Pip Cet on Sun, 22
 Jun 2025 06:34:11 +0000)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87qzze6z9e.fsf@HIDDEN>
 <86qzzdk260.fsf@HIDDEN> <87a56176hf.fsf@HIDDEN>
 <86v7opicup.fsf@HIDDEN> <87wm945lpd.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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, 22 Jun 2025 06:34:11 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
> 
> "Eli Zaretskii" <eliz@HIDDEN> writes:
> 
> >> Date: Sat, 21 Jun 2025 10:07:43 +0000
> >> From: Pip Cet <pipcet@HIDDEN>
> >> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
> >>
> >> "Eli Zaretskii" <eliz@HIDDEN> writes:
> >>
> >> >> Sorry I'm asking for clarification, but my impression was the igc branch
> >> >> was to change very little in the !HAVE_MPS case, because general GC
> >> >> cleanups such as this one make more sense on the main branch: fewer
> >> >> merge conflicts, we'll see the benefits before merging the branch (or
> >> >> even if for some reason we never do), a better git history, better test
> >> >> coverage for pre-push testing.
> >> >
> >> > That's true in general, but if some change in the non-MPS case makes
> >> > the overall code cleaner, there should be no reason not to make it on
> >> > the branch.
> 
> This is what you said: a "change in the non-MPS case" (so presumably one
> not touching the MPS code) should be made "on the branch".

No, you presume wrong.  I just mean changes in parts of code that are
not compiled in the MPS build.  But see below.

> >> I can't parse that statement.  If a change affects only the non-MPS
> >> case, which branch should we make it on?  The master branch would make
> >> sense to me, and the feature/igc branch doesn't make sense.
> >
> > That's not the situation I alluded to.  Your question was about more
> > general situations: you never said that you are talking about changes
> > that affect _only_ the non-MPS parts of the code.  I replied with the
> > situation in mind where some change affects _both_ MPS and non-MPS
> > parts.
> 
> How is it a "change in the non-MPS case" if it affects both?

A change could affect both MPS and non-MPS code, couldn't it?  Why is
it so hard to understand?

> >> This single change isn't critical, of course, but feature/igc already
> >> contains too many changes which should be merged to master before we
> >> ever consider merging the branch as a whole.  If the strategy is to
> >> increase that number further, that makes a sensible merge of feature/igc
> >> much less likely.
> >
> > Like I said: merge conflicts are a non-issue with modern dVCSes.
> 
> That's not my experience.

We will have to agree to disagree, then.




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

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


Received: (at 78813) by debbugs.gnu.org; 22 Jun 2025 06:34:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 22 02:34:27 2025
Received: from localhost ([127.0.0.1]:46276 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTEHb-0004qA-H3
	for submit <at> debbugs.gnu.org; Sun, 22 Jun 2025 02:34:27 -0400
Received: from mail-10630.protonmail.ch ([79.135.106.30]:52959)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1uTEHY-0004pn-AS
 for 78813 <at> debbugs.gnu.org; Sun, 22 Jun 2025 02:34:26 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1750574057; x=1750833257;
 bh=dbsk22finDdYueHXD61mYbNeymg2CESboKdkKAZ3bUk=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector;
 b=M4wwVtGz2VyyKk2sin60F0rdnsUNIOg56UnVzEfXiXeJ/yagFipnUylqe44QFinAv
 dDe4m+XSrbLQTO8IlNLyQUoulu5O0/XmyymrRWqUEOZ/bueZSRefigR4FF/1I2UHO0
 RgyH1gDXBHWcnrCCZbttaLEqsAaS4v+U+iM18vID3Dh4dq8yyEpiCdwXdgEhEn68xS
 5MbchFE3WWK900PMVrx4Z9O326vxiEIKWY1GNTwRXq0JCSMkLRnHFLq0aQn+ekmmO1
 97o3XJ7MzSNp02j/4lcr0u4Nf5nP9dj9nK5DcZFNM/eFa892D1/26JZXj+mYjRQjq+
 +5uUuYPH2xcPg==
Date: Sun, 22 Jun 2025 06:34:11 +0000
To: Eli Zaretskii <eliz@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
Message-ID: <87wm945lpd.fsf@HIDDEN>
In-Reply-To: <86v7opicup.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87qzze6z9e.fsf@HIDDEN>
 <86qzzdk260.fsf@HIDDEN> <87a56176hf.fsf@HIDDEN>
 <86v7opicup.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 09efec081d6a8ac073c22eb911976b2d2a405e06
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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 (-)

"Eli Zaretskii" <eliz@HIDDEN> writes:

>> Date: Sat, 21 Jun 2025 10:07:43 +0000
>> From: Pip Cet <pipcet@HIDDEN>
>> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
>>
>> "Eli Zaretskii" <eliz@HIDDEN> writes:
>>
>> >> Sorry I'm asking for clarification, but my impression was the igc bra=
nch
>> >> was to change very little in the !HAVE_MPS case, because general GC
>> >> cleanups such as this one make more sense on the main branch: fewer
>> >> merge conflicts, we'll see the benefits before merging the branch (or
>> >> even if for some reason we never do), a better git history, better te=
st
>> >> coverage for pre-push testing.
>> >
>> > That's true in general, but if some change in the non-MPS case makes
>> > the overall code cleaner, there should be no reason not to make it on
>> > the branch.

This is what you said: a "change in the non-MPS case" (so presumably one
not touching the MPS code) should be made "on the branch".

>> I can't parse that statement.  If a change affects only the non-MPS
>> case, which branch should we make it on?  The master branch would make
>> sense to me, and the feature/igc branch doesn't make sense.
>
> That's not the situation I alluded to.  Your question was about more
> general situations: you never said that you are talking about changes
> that affect _only_ the non-MPS parts of the code.  I replied with the
> situation in mind where some change affects _both_ MPS and non-MPS
> parts.

How is it a "change in the non-MPS case" if it affects both?  I was
merely asking for clarification.

>> This single change isn't critical, of course, but feature/igc already
>> contains too many changes which should be merged to master before we
>> ever consider merging the branch as a whole.  If the strategy is to
>> increase that number further, that makes a sensible merge of feature/igc
>> much less likely.
>
> Like I said: merge conflicts are a non-issue with modern dVCSes.

That's not my experience.

Pip





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

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


Received: (at 78813) by debbugs.gnu.org; 21 Jun 2025 10:54:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 06:54:52 2025
Received: from localhost ([127.0.0.1]:34806 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSvs1-0001us-Nd
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 06:54:52 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:34954)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uSvry-0001ts-Hp
 for 78813 <at> debbugs.gnu.org; Sat, 21 Jun 2025 06:54:47 -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 1uSvrs-0008QK-Vs; Sat, 21 Jun 2025 06:54:41 -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=qNPOcQj4pDHZDsvDS2EYzW9DiWWncg0NhrYLibx7EV0=; b=hceYai3GEwOL
 sPFjjm92Vh8Fdw7XbIj009neRxscE+ohy5s8WysXvUB8B0Kx03hilDbGNNXZwdPejKJbJ7r+Q5gjq
 NJa4WZzJH7XdOaYr0LCgwnaZOkRc7U0KJjuNjTJokdugMlv/HWGu+dyXGt4o66I23nH6PS4SdZi/n
 FWRR5ZMOykXE+uesNCbHyVvHdGIklXPk8mlbIOM8Fz9nmA0T5I7jdRQCUGNEDnaLzKtqrQk+YdWIH
 ssUKUcsEYJ1xx9gc+b2xNQJ75RrITg0jxdFyEhxF0nv35XJSMyan2Hkgh4t0e5HsbAS32SR3bYYaY
 QfBefbo9QhV8O0KV4C6ryA==;
Date: Sat, 21 Jun 2025 13:54:38 +0300
Message-Id: <86v7opicup.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
In-Reply-To: <87a56176hf.fsf@HIDDEN> (message from Pip Cet on Sat, 21
 Jun 2025 10:07:43 +0000)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87qzze6z9e.fsf@HIDDEN>
 <86qzzdk260.fsf@HIDDEN> <87a56176hf.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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, 21 Jun 2025 10:07:43 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
> 
> "Eli Zaretskii" <eliz@HIDDEN> writes:
> 
> >> Sorry I'm asking for clarification, but my impression was the igc branch
> >> was to change very little in the !HAVE_MPS case, because general GC
> >> cleanups such as this one make more sense on the main branch: fewer
> >> merge conflicts, we'll see the benefits before merging the branch (or
> >> even if for some reason we never do), a better git history, better test
> >> coverage for pre-push testing.
> >
> > That's true in general, but if some change in the non-MPS case makes
> > the overall code cleaner, there should be no reason not to make it on
> > the branch.
> 
> I can't parse that statement.  If a change affects only the non-MPS
> case, which branch should we make it on?  The master branch would make
> sense to me, and the feature/igc branch doesn't make sense.

That's not the situation I alluded to.  Your question was about more
general situations: you never said that you are talking about changes
that affect _only_ the non-MPS parts of the code.  I replied with the
situation in mind where some change affects _both_ MPS and non-MPS
parts.  Changes that affect only the non-MPS parts should preferably
installed on master, indeed, but even in that case this is not a
dogma, and we could make exceptions if there are good reasons.

> > As for merge conflicts, I'm not afraid of that, especially if we make
> > changes in an area that doesn't see too many changes (initializations
> > are generally of that nature).
> 
> Well, you did just push a change which causes a merge conflict here.

I didn't install any changes on the igc branch, so I'm not sure how
this is relevant.  I did exactly what you suggested: making any such
changes on master.  What am I missing?

> Helmut, as this discussion shows, I see no way to apply changes such as
> this one right now; they won't be accepted in master, apparently, and
> applying them to feature/igc will produce merge conflicts, as we've just
> seen.

What have we just seen, may I ask??

> >> If we decide not to reduce the number of static objects at this time and
> >> focus on getting things to work, I can live with that and continue
> >> working on the branch, but I can't speak for Helmut, of course.
> >>
> >> Diverting all work that's even slightly related to GC to the feature/igc
> >> branch and keeping master in its current state seems like a very risky
> >> proposal to me.
> >
> > Maybe I'm missing something, but what does this change have to do with
> > GC?  This particular static object is never modified and is not
> > exposed to Lisp.  So it shouldn't cause us any GC-related efforts.
> 
> This confuses me.  The unusual thing here is precisely that we have a
> static object which is not staticpro'd but which we know not to cause GC
> problems.  Helmut said so clearly when he posted the patch.  "Never
> modified and not exposed to Lisp" is irrelevant to the question of
> whether GC needs to know about the object.

Well, the initialization aspects are still relevant.  Let's please try
to keep the initialization of Lisp values in the syms_of_FOO and
init_FOO functions, as we always did.  If this requires GC protection,
it's fine by me.

> This single change isn't critical, of course, but feature/igc already
> contains too many changes which should be merged to master before we
> ever consider merging the branch as a whole.  If the strategy is to
> increase that number further, that makes a sensible merge of feature/igc
> much less likely.

Like I said: merge conflicts are a non-issue with modern dVCSes.
Let's not let that particular tail wag the dog.




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

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


Received: (at 78813) by debbugs.gnu.org; 21 Jun 2025 10:08:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 06:08:06 2025
Received: from localhost ([127.0.0.1]:33915 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSv8k-0004tk-6f
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 06:08:05 -0400
Received: from mail-10628.protonmail.ch ([79.135.106.28]:16887)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1uSv8e-0004sA-CF
 for 78813 <at> debbugs.gnu.org; Sat, 21 Jun 2025 06:07:59 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1750500469; x=1750759669;
 bh=7e8scG5gGO9NFtnV8AuzLrTNCzWMn/RM0JSPCSSSZE4=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector;
 b=cEhNrlx5CnLXRAyPk9LGzHA4sbZf+Duxa+e7HuYwaTiSwWR2TX3GfBTYBqAaLZTFV
 uI0/e3M0uoTE5/XwXOl4sFBR4g8T/9vRalzXeDpjJ6hX7cl+Hve2m+Fj8cRztBuT1C
 LqtFYu+mAeQpJ51HkOEEa4jLfs8zFg4HrMWVDKeHxK57JUb+d5yHRkiLgIfWp/cF+2
 txWVMw9YBzCAIhgvzDRWu6L9GLbme6X+sABlXjQxWVITu4JMUE//ow4ENZdaAT6W7l
 Pi0l0/+IV1mCo5nvXkcS+ix9ACs05g8/u5vqbv4E6V1BpkyGZsm/bYRZC4qEX+rI/b
 Ztm1IN3DzWloA==
Date: Sat, 21 Jun 2025 10:07:43 +0000
To: Eli Zaretskii <eliz@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
Message-ID: <87a56176hf.fsf@HIDDEN>
In-Reply-To: <86qzzdk260.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87qzze6z9e.fsf@HIDDEN>
 <86qzzdk260.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 4a0932a4ec038c7e53136a2a4f68f56e3d340890
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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 (-)

"Eli Zaretskii" <eliz@HIDDEN> writes:

>> Date: Fri, 20 Jun 2025 18:31:32 +0000
>> From: Pip Cet <pipcet@HIDDEN>
>> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
>>
>> "Eli Zaretskii" <eliz@HIDDEN> writes:
>>
>> >> > What are the advantages of making this change on master?
>> >>
>> >> As on feature/igc, the change only makes it harder to break things by
>> >> changing the rest of the code; there's no functional change on either
>> >> branch, and while Helmut's patch is likely to reduce code size a litt=
le,
>> >> that's not the reason we should install it.
>> >>
>> >> I don't know whether we actually finally agreed that unprotected stat=
ic
>> >> Lisp_Objects should be phased out, but IIRC that's what Gerd suggeste=
d
>> >> very strongly.  This change is part of that effort.
>> >
>> > Thanks, but I asked about this change on its own, not as part of some
>>
>> That's the first paragraph: mainly, it changes code to be less risky in
>> its no-need-to-GC assumptions, so the very minor changes which would
>> cause those assumptions to be violated won't result in very tricky bugs.
>
> See my other message where I explained why I'd like not to make such
> changes, if that is the only advantage.

>> > effort (which AFAIU is on the igc branch, not on master).  IOW,
>>
>> Sorry I'm asking for clarification, but my impression was the igc branch
>> was to change very little in the !HAVE_MPS case, because general GC
>> cleanups such as this one make more sense on the main branch: fewer
>> merge conflicts, we'll see the benefits before merging the branch (or
>> even if for some reason we never do), a better git history, better test
>> coverage for pre-push testing.
>
> That's true in general, but if some change in the non-MPS case makes
> the overall code cleaner, there should be no reason not to make it on
> the branch.

I can't parse that statement.  If a change affects only the non-MPS
case, which branch should we make it on?  The master branch would make
sense to me, and the feature/igc branch doesn't make sense.

> As for merge conflicts, I'm not afraid of that, especially if we make
> changes in an area that doesn't see too many changes (initializations
> are generally of that nature).

Well, you did just push a change which causes a merge conflict here.

Helmut, as this discussion shows, I see no way to apply changes such as
this one right now; they won't be accepted in master, apparently, and
applying them to feature/igc will produce merge conflicts, as we've just
seen.

>> If we decide not to reduce the number of static objects at this time and
>> focus on getting things to work, I can live with that and continue
>> working on the branch, but I can't speak for Helmut, of course.
>>
>> Diverting all work that's even slightly related to GC to the feature/igc
>> branch and keeping master in its current state seems like a very risky
>> proposal to me.
>
> Maybe I'm missing something, but what does this change have to do with
> GC?  This particular static object is never modified and is not
> exposed to Lisp.  So it shouldn't cause us any GC-related efforts.

This confuses me.  The unusual thing here is precisely that we have a
static object which is not staticpro'd but which we know not to cause GC
problems.  Helmut said so clearly when he posted the patch.  "Never
modified and not exposed to Lisp" is irrelevant to the question of
whether GC needs to know about the object.

This single change isn't critical, of course, but feature/igc already
contains too many changes which should be merged to master before we
ever consider merging the branch as a whole.  If the strategy is to
increase that number further, that makes a sensible merge of feature/igc
much less likely.

Pip





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

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


Received: (at 78813) by debbugs.gnu.org; 21 Jun 2025 07:02:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 03:02:43 2025
Received: from localhost ([127.0.0.1]:60120 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSsFP-00058K-3a
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 03:02:43 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:51638)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uSsFL-00057I-Jl
 for 78813 <at> debbugs.gnu.org; Sat, 21 Jun 2025 03:02:40 -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 1uSsFG-0002yp-8l; Sat, 21 Jun 2025 03:02:34 -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=zd2OsbIxBTQ6J35R1aC/5sccFvLcd/j++tCHtOg8hb4=; b=IeNxCi8MB7fV
 5A4IXnxLYQQ6o3tNSj2mAuTBiS8mTEsJszuH8nbhg79YN+OklBQoqpKjkNmAzIEP9IeSa5O5H2inU
 4/KJ0Wb5haegmAFjVC0f0f6XMu5KldycoQjdboC1+UKnptuYCqrXXUjpUO6anstW2KMxLfEPWWXq+
 cMDDZtSWJoz0adbojRvJThHhXXaro+4M5pASeYCven6G+A5s8VUe9dy439PclfmPgrCCrTs/IVySM
 lwenLrHEDOBokGFiu1kx5pWjnVSqCZArUFho/oZPiaP3EAOZaiM+NcEZhRAa5SSmFZnifk5sQtnDW
 JbgwiZ1FfizW1qFUwYWBLg==;
Date: Sat, 21 Jun 2025 10:02:31 +0300
Message-Id: <86qzzdk260.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
In-Reply-To: <87qzze6z9e.fsf@HIDDEN> (message from Pip Cet on Fri, 20
 Jun 2025 18:31:32 +0000)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87qzze6z9e.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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: Fri, 20 Jun 2025 18:31:32 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
> 
> "Eli Zaretskii" <eliz@HIDDEN> writes:
> 
> >> > What are the advantages of making this change on master?
> >>
> >> As on feature/igc, the change only makes it harder to break things by
> >> changing the rest of the code; there's no functional change on either
> >> branch, and while Helmut's patch is likely to reduce code size a little,
> >> that's not the reason we should install it.
> >>
> >> I don't know whether we actually finally agreed that unprotected static
> >> Lisp_Objects should be phased out, but IIRC that's what Gerd suggested
> >> very strongly.  This change is part of that effort.
> >
> > Thanks, but I asked about this change on its own, not as part of some
> 
> That's the first paragraph: mainly, it changes code to be less risky in
> its no-need-to-GC assumptions, so the very minor changes which would
> cause those assumptions to be violated won't result in very tricky bugs.

See my other message where I explained why I'd like not to make such
changes, if that is the only advantage.

> > effort (which AFAIU is on the igc branch, not on master).  IOW,
> 
> Sorry I'm asking for clarification, but my impression was the igc branch
> was to change very little in the !HAVE_MPS case, because general GC
> cleanups such as this one make more sense on the main branch: fewer
> merge conflicts, we'll see the benefits before merging the branch (or
> even if for some reason we never do), a better git history, better test
> coverage for pre-push testing.

That's true in general, but if some change in the non-MPS case makes
the overall code cleaner, there should be no reason not to make it on
the branch.

As for merge conflicts, I'm not afraid of that, especially if we make
changes in an area that doesn't see too many changes (initializations
are generally of that nature).

> If we decide not to reduce the number of static objects at this time and
> focus on getting things to work, I can live with that and continue
> working on the branch, but I can't speak for Helmut, of course.
> 
> Diverting all work that's even slightly related to GC to the feature/igc
> branch and keeping master in its current state seems like a very risky
> proposal to me.

Maybe I'm missing something, but what does this change have to do with
GC?  This particular static object is never modified and is not
exposed to Lisp.  So it shouldn't cause us any GC-related efforts.




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

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


Received: (at 78813) by debbugs.gnu.org; 21 Jun 2025 06:56:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 02:56:54 2025
Received: from localhost ([127.0.0.1]:59984 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSs9l-0004dF-Ky
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 02:56:54 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:34160)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uSs9j-0004cH-Qz
 for 78813 <at> debbugs.gnu.org; Sat, 21 Jun 2025 02:56:52 -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 1uSs9e-0000lf-5z; Sat, 21 Jun 2025 02:56:46 -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=mrSLzFq6zDcFJgGhPksdrq9eO2IHD9vgsF8Bo6dUH/c=; b=G0Yq1mwsdr4+
 SfYqemXudELNDc3ZAYFgmmY3PhsTZTRAN8hBSNZ6derCOSZaLyLrxqIa7BRxVj8yHUGiy64/veArD
 +Qtja5xtM1/T8YmVzO4O1jW7u+MZabIhskB55fnpBavb7Bq7lo2A80ps4BNd1J+7hxkpRH2dZjDAs
 X5HlELdW6FMY8cBdMjvV019MdVezktuuVoKaGd98JbV1ZP6cnjjC6wmZSBeybCKPzp6gZIhgjP8Je
 qzlxW0gpk++iZjKYJ9nNnCu5T220Cd3+GUKxHuzKRRJIZSOryNE92pNYyX0iXzGVPL4z6JRqUHBV0
 1MXP1fUqgqoS6P3vi2FlCA==;
Date: Sat, 21 Jun 2025 09:56:41 +0300
Message-Id: <86sejtk2fq.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Helmut Eller <eller.helmut@HIDDEN>
In-Reply-To: <87wm96mfl7.fsf@HIDDEN> (message from Helmut Eller on Fri, 20
 Jun 2025 20:29:40 +0200)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN> <87wm96mfl7.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, pipcet@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 (---)

> From: Helmut Eller <eller.helmut@HIDDEN>
> Cc: Pip Cet <pipcet@HIDDEN>,  78813 <at> debbugs.gnu.org
> Date: Fri, 20 Jun 2025 20:29:40 +0200
> 
> On Fri, Jun 20 2025, Eli Zaretskii wrote:
> 
> > Thanks, but I asked about this change on its own, not as part of some
> > effort (which AFAIU is on the igc branch, not on master).  IOW,
> > suppose we release Emacs 31 without the MPS support (something I hope
> > will not need to happen, but just for the sake of this sub-thread):
> > what would that change give us, considering the fact that this code
> > was there since Emacs 21?
> 
> It would add some minor protection against accidental modifications of
> the face_attr_sym array.

How can it be accidentally modified?  It's a static array not exposed
to Lisp.  Its purpose is to avoid code that mentions the attribute
keywords and their LFACE_* indices literally, as in

  if (attr_filter == LFACE_FOUNDRY_INDEX && EQ (keyword, QCfoundry)
      || attr_filter == LFACE_SWIDTH_INDEX && EQ (keyword, QCwidth)
      || attr_filter == LFACE_HEIGHT_INDEX && EQ (keyword, QCheight)
      || ...

etc.

More generally, the usual style in Emacs is to initialize stuff in
init_foo and syms_of_foo functions, which are called during the
various stages and variants of the initialization and startup.
Initialization using C initializers is used for simple values like
scalars.  The LISP_INITIALLY stuff should be used only very sparingly
and if strictly necessary, because it is very confusing at first
sight.  So I'd very much prefer that we kept the current conventions
for initializing complex variables, especially variables with Lisp
values.




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

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


Received: (at 78813) by debbugs.gnu.org; 20 Jun 2025 18:31:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 20 14:31:51 2025
Received: from localhost ([127.0.0.1]:55615 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSgWk-0003I6-65
	for submit <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:31:51 -0400
Received: from mail-4316.protonmail.ch ([185.70.43.16]:44019)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1uSgWf-0003Ge-8Q
 for 78813 <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:31:47 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1750444298; x=1750703498;
 bh=UeV1xx85QyEnvKS6S9LJiOUfNCDp3+ebXrE6nvz6gGU=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector;
 b=yTrIdxV/inl5rp0lzBHUEjPB8j+yhIcLSXvVZ7eHB+SO1MIjXXap1f+yl2V61l75U
 jG8XsgkCAkjcIPcSdJnTUYNvVkLjYLScsTsO42Q/TdJRBOsMQpKJ1B+iZV4KPm7RK0
 KyEIw1ewnkiBRj2oyf7bwOutM8DDkw1tte96V9Y7BD0uL9zp4znSr9ghRpg728NQsv
 hfvb2/+9oT84nMV4Xeg+TWEkAEZ14+oC/JyiOFLXO9q9yq3jw0llKONbQHScYK76LB
 NAPx4uKbjSsYCGwVPQHeLSAzQ2yuNfkjtW2m8RhRRsK+u1Z6doz8+zMOuLJeBug2pI
 DecS7ZX4JR7Rg==
Date: Fri, 20 Jun 2025 18:31:32 +0000
To: Eli Zaretskii <eliz@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
Message-ID: <87qzze6z9e.fsf@HIDDEN>
In-Reply-To: <86wm96k88u.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 9c1c72b90d076b5f99b4a3d8ad87b27e6913ebb6
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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 (-)

"Eli Zaretskii" <eliz@HIDDEN> writes:

>> Date: Fri, 20 Jun 2025 10:17:46 +0000
>> From: Pip Cet <pipcet@HIDDEN>
>> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
>>
>> "Eli Zaretskii" <eliz@HIDDEN> writes:
>>
>> >> Date: Tue, 17 Jun 2025 15:28:57 +0000
>> >> From: Pip Cet <pipcet@HIDDEN>
>> >> Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>
>> >>
>> >> "Helmut Eller" <eller.helmut@HIDDEN> writes:
>> >>
>> >> > Tags: patch
>> >> >
>> >> > This is a proposal to make the variable face_attr_sym const.  Mostl=
y so
>> >> > that it's more obvious that it doesn't need to be traced by the GC.
>> >>
>> >> Makes sense to me, but should be on master.  Is this okay for master?
>> >
>> > What are the advantages of making this change on master?
>>
>> As on feature/igc, the change only makes it harder to break things by
>> changing the rest of the code; there's no functional change on either
>> branch, and while Helmut's patch is likely to reduce code size a little,
>> that's not the reason we should install it.
>>
>> I don't know whether we actually finally agreed that unprotected static
>> Lisp_Objects should be phased out, but IIRC that's what Gerd suggested
>> very strongly.  This change is part of that effort.
>
> Thanks, but I asked about this change on its own, not as part of some

That's the first paragraph: mainly, it changes code to be less risky in
its no-need-to-GC assumptions, so the very minor changes which would
cause those assumptions to be violated won't result in very tricky bugs.

> effort (which AFAIU is on the igc branch, not on master).  IOW,

Sorry I'm asking for clarification, but my impression was the igc branch
was to change very little in the !HAVE_MPS case, because general GC
cleanups such as this one make more sense on the main branch: fewer
merge conflicts, we'll see the benefits before merging the branch (or
even if for some reason we never do), a better git history, better test
coverage for pre-push testing.

(This isn't about improving code specific to the old GC; I understand you
don't want it touched and I'm working on the assumption that it'll
become unused or go away entirely at some point.)

If we decide not to reduce the number of static objects at this time and
focus on getting things to work, I can live with that and continue
working on the branch, but I can't speak for Helmut, of course.

Diverting all work that's even slightly related to GC to the feature/igc
branch and keeping master in its current state seems like a very risky
proposal to me.

So what shall we do?

> suppose we release Emacs 31 without the MPS support (something I hope
> will not need to happen, but just for the sake of this sub-thread):
> what would that change give us, considering the fact that this code
> was there since Emacs 21?

Perhaps Helmut can add something to what I wrote above.

Pip





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

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


Received: (at 78813) by debbugs.gnu.org; 20 Jun 2025 18:29:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 20 14:29:50 2025
Received: from localhost ([127.0.0.1]:55592 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSgUo-0002wY-5B
	for submit <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:29:50 -0400
Received: from mail-ed1-x533.google.com ([2a00:1450:4864:20::533]:52313)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <eller.helmut@HIDDEN>)
 id 1uSgUm-0002vJ-0c
 for 78813 <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:29:48 -0400
Received: by mail-ed1-x533.google.com with SMTP id
 4fb4d7f45d1cf-607434e1821so3180881a12.0
 for <78813 <at> debbugs.gnu.org>; Fri, 20 Jun 2025 11:29:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1750444182; x=1751048982; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=0/UmycH4DxOhofDj33SHTvm+tclRWQNY+SYN4ga4grY=;
 b=Btu+OyV0m+pnpPSHS+SMQoNNO58pWMAxrAzDmvuYTrWM1i5q+OA0H5PgcsPGzCouDg
 3mv9eB5+4PR1dKiRor/6HRumgu2aSVYG6C2K9MT2gr95b/U7ZSL3FtoF0SX1N5G7p8tU
 6GBn7JofxcGXn94pFcP5EwM1I0RRT573vNljlJzKXQdli2JirpopfWDgT+DWyfys6Vje
 RKghRS6uStvs3PRLcbT0ZtkhVrt07DyG2wFjYeInHtMapjs2IY8ezmbIGlChhzx6yDyL
 Z9nMjIRGVq0HAKwo20X3ab17560fay2+LTcQVkAZaAQW8iNj45E2m8/y+imGpTD7Dh9s
 O+0A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1750444182; x=1751048982;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=0/UmycH4DxOhofDj33SHTvm+tclRWQNY+SYN4ga4grY=;
 b=RRgUYzJ0kCnf83plC1axPtBs3oQpQgPJWprn+aF++TZYKrp2wMQnJw34F0Urh7iRxZ
 MJ8kWVjey9AIen6ajl+kEKKzT1VKh1apM7GhuYsYkmkAH9zjuPHRwOsa2ktPDzqFVneH
 wQd/ftWZf313cdUyTAp9yAmZRBbajUJX8IB62Y3L1NG93qCCaP4OXj5DnMdRuA03paWc
 LTbdelI8abZZrWsq4zq3BFCK4r/Af+ImuI5czRgTEWuit48Q8fiZy404P/1glqQfZA3/
 MfH7MOtfuLU8sarw4BteuuV90IGEfAHYMnP4qA7W+7SjLJ1ToBYV4Vyw+8brJcptUDMJ
 KmoA==
X-Forwarded-Encrypted: i=1;
 AJvYcCV7G7Kigz+lFOfcoWpgwDlcOhIYFQR43t9hF0SP8WCpSdTeDsP2SitLqxZMbHYP2R47mV8VCw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yy89yd4U0/6VOAMilYB3h3nDsIOIPa1kd35TVckQTWkkITKp2R0
 0rZTmVfL1FNOdWls6K12AQaieDwT//9Rwe2UvDgVslGok3XEHfoMF/dsecDgpA==
X-Gm-Gg: ASbGncsM6gLavyxnZXsGM8fh4dtWmkL4p5/DICvJhIhXoBgL5jNMLrHUTqjlVgDIImZ
 wTIv8PHsOIB14/GxZAAu2yTjhpcHZIfsJjpgW5YhjhISLdsRM47cMu9fT0RDytQoSSYv19Plwkk
 qPX9nCYbm9sEPDJYZ3ZX7WZF7ZXzfqHeGRJRsmNCEL148GtaZgPsJ1XMfjdhHMNqx75J96uIqea
 Ead7WFQONSUEVm+E7lrTdvcdOi2MpyX6IM8ocT5bNB5gdoPNXeGM75X4C5sw/txefMqV6qVGKXr
 h6WKGo6Nkvz5obHKCkG8PZU9RirH/zohp244sOoK+w0Wv2h5cefrwH7B9powbK1jskHiy5fHZKV
 gicoGlPO3EGWmqEnRo1E=
X-Google-Smtp-Source: AGHT+IGv92EjY7Mz0kULGAqRIK0VIIIqUlvX97GyKG3k+kswRVbEJkQIj78yNoAMJZKYHjE0p0RF8Q==
X-Received: by 2002:a05:6402:40c3:b0:606:a99d:91d4 with SMTP id
 4fb4d7f45d1cf-60a1d190867mr3448304a12.27.1750444181696; 
 Fri, 20 Jun 2025 11:29:41 -0700 (PDT)
Received: from caladan (dial-184179.pool.broadband44.net. [212.46.184.179])
 by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-60a18543642sm1716068a12.26.2025.06.20.11.29.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 20 Jun 2025 11:29:41 -0700 (PDT)
From: Helmut Eller <eller.helmut@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
In-Reply-To: <86wm96k88u.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
 <86wm96k88u.fsf@HIDDEN>
Date: Fri, 20 Jun 2025 20:29:40 +0200
Message-ID: <87wm96mfl7.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, Pip Cet <pipcet@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 Fri, Jun 20 2025, Eli Zaretskii wrote:

> Thanks, but I asked about this change on its own, not as part of some
> effort (which AFAIU is on the igc branch, not on master).  IOW,
> suppose we release Emacs 31 without the MPS support (something I hope
> will not need to happen, but just for the sake of this sub-thread):
> what would that change give us, considering the fact that this code
> was there since Emacs 21?

It would add some minor protection against accidental modifications of
the face_attr_sym array.

Helmut




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

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


Received: (at 78813) by debbugs.gnu.org; 20 Jun 2025 18:27:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 20 14:27:30 2025
Received: from localhost ([127.0.0.1]:55582 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSgSW-0002fj-M4
	for submit <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:27:30 -0400
Received: from mail-ed1-x52a.google.com ([2a00:1450:4864:20::52a]:47353)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <eller.helmut@HIDDEN>)
 id 1uSgSR-0002eM-5M
 for 78813 <at> debbugs.gnu.org; Fri, 20 Jun 2025 14:27:25 -0400
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-60780d74c85so3232801a12.2
 for <78813 <at> debbugs.gnu.org>; Fri, 20 Jun 2025 11:27:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1750444037; x=1751048837; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=fuQBGkJeQ8W++UNPbuX/X3Q/ciRVbbuD9eQD3KttAho=;
 b=iW/KlOI0wi5M6bDogXjLM6KQHsHHjY7MX0dL0i+WBZ9sTwaalzlNrs7uZjWxNn+vi9
 RIl7IGVkXJmyKsiZCw8R9Y5M3e58VNIpVXqumVCXJTbFLgPfRGhGU0WlkIPqftAvVeoy
 e8w/AwREh00PI0+GwnLowUfdMAnWsl43Y+8ukNmm2HFMzPmJkq5ZJBUeU0T+wcJCFcw0
 D4lguNtsuajxH5VJ+7QLu5k1oyYhLiq3posj8zWZ202Zf6eY+fl4nuwfF0Ea/fB9r41G
 w0RxPsrofsjb8Oi8C49eRKSqwkMbWvGY4wzuLqjx8EBSnBmxyTsvI9jLF7L6zn22oJxl
 F8RA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1750444037; x=1751048837;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=fuQBGkJeQ8W++UNPbuX/X3Q/ciRVbbuD9eQD3KttAho=;
 b=SZtg3lPMdtGTMIoeIaqt0WC7shZ/yGO1uzSbiFCow6LYs4+vfLYLpIETWu6c4/tyXW
 q2jGQzcfYYRIHW62leowR1NWDhVEjSAjKh8JhbB3MKkTqGILzeYp4pQ1hVE433GrStDZ
 J9oMbq3kTnn/UlXY5WQDxmt3t5lLryeOFRW1Bvlk7Flf/vYcIZpNaKabTzdEreXIQqHH
 CPoIDM2fYClc9/yfHsxxFSTNkyeXW0PQgxUtmrC+LCuLgdzImplhkGE0IghVqp1BuuXC
 Hrnju8XlXQ39+IMHyXWugpki08d39+lQN285XPiIhdSxLEnabeiFkAgd+WVUQ/CiU/h6
 m+rw==
X-Forwarded-Encrypted: i=1;
 AJvYcCWzabKrX+g6CIvp2LjEyoxjs5gMt5tNuagFu+Dk7Qzr/rVtK8r+GRbP8yANqVZrDBXjc2qEtQ==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yz6XHz6x6ZxcEP4/G7HnZhmPiASEPNDbtigdmH1aEvKRQOyt0re
 O3XEohXkI6YGi473pKfydopvNfQCPnEsbJ2eye4HPl1C7yubs5XcQgfalJEtfQ==
X-Gm-Gg: ASbGnctAbLSQgpWpnU2KXRIOPL+w1rKi+f8lCkIxdAShYvCBDKQkwHHcpP13reZYpDr
 C/+GBgirYDBNMW0VWkhId5j0H2mC+efsQDv4+RkYQTpYuFtDZfmHsZWCt5i+5vJcuvot6wOL6og
 V3KCtVHkl+cJJ1R7Uv8sovAC1okYUfKBiVqGazKmeG5OHNqOvc2Ksfu940J42qCk3xZS5XTc34H
 fvvOoKUz++SnMstc+wEzrLCO8OkUMrBkL2Is6T+SpUwMwrMYMudLyXcd4wKDa6PWcCzawCAVynP
 8Yr4NAjQUzIupm3SCvFK6Qm1VQSl4AX7p5zB61Itfn30QobHhR1JVXYm01u4qA68O4zctsuTczC
 CP+nMIfIuu40oAJru42E=
X-Google-Smtp-Source: AGHT+IHsmNtScuXTW2cAXP7TfqRY1w53c0hv1gNYlZS4+K9Zs20NaWgmtwfF6lJq92wX8M++kJKmLQ==
X-Received: by 2002:a05:6402:5191:b0:607:2a09:38dd with SMTP id
 4fb4d7f45d1cf-60a1d16605emr3778009a12.18.1750444036538; 
 Fri, 20 Jun 2025 11:27:16 -0700 (PDT)
Received: from caladan (dial-184179.pool.broadband44.net. [212.46.184.179])
 by smtp.gmail.com with ESMTPSA id
 4fb4d7f45d1cf-60a18cba668sm1672059a12.58.2025.06.20.11.27.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 20 Jun 2025 11:27:16 -0700 (PDT)
From: Helmut Eller <eller.helmut@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
In-Reply-To: <878qlmpvi2.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
Date: Fri, 20 Jun 2025 20:27:15 +0200
Message-ID: <8734bunu9o.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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 Fri, Jun 20 2025, Pip Cet wrote:

> Helmut, I notice both your code and the existing code omit the
> LFACE_FAMILY_INDEX case.  Do you happen to know if there's a reason for
> that?  If there is, we should add a comment to make sure no one attempts
> to reuse this vector in a context where the QCfamily symbol is needed.

No.  I just copied the existing code and edited it a bit.

Helmut




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

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


Received: (at 78813) by debbugs.gnu.org; 20 Jun 2025 10:39:08 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 20 06:39:08 2025
Received: from localhost ([127.0.0.1]:48460 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSZ9H-0004q1-8p
	for submit <at> debbugs.gnu.org; Fri, 20 Jun 2025 06:39:07 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:50610)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uSZ9F-0004ot-0R
 for 78813 <at> debbugs.gnu.org; Fri, 20 Jun 2025 06:39:05 -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 1uSZ99-0000as-KC; Fri, 20 Jun 2025 06:38:59 -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=wupIhrYl+MEwiApmK47j8NzsRoBy1QZmZhiz6MLvFBk=; b=hXoR/QOrM/ke
 o+tF8PoiIl2bdsDi/tDlBc9KuX20teFc6hUX+I19Mx7d73sVOaWnXr6srXyNdq1EPmBM0fLjIzAoy
 4do0JCnbs47S575KUolTqb6URUxn5oB9a9w02glfugwiP3/xqRBHj0pXSASG27+u/1nQ5Mgt3Keh9
 SQhwPlnyo6R08JahX0s5AtFeqRyV0L+EyvVbD30KXfNKbtMBv/E69h0tYNecAJ8Uo/UClbgNtFhcC
 lcbjaQWMjCl69ZclBhndmwki5qmUoxjNIvL87fmow93RUuzR/TvyAJAWD4+lVK6ZILDtGBIBeq2xF
 msU/v1Q7hlIORK3MlXUXSg==;
Date: Fri, 20 Jun 2025 13:38:57 +0300
Message-Id: <86wm96k88u.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
In-Reply-To: <878qlmpvi2.fsf@HIDDEN> (message from Pip Cet on Fri, 20
 Jun 2025 10:17:46 +0000)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN> <878qlmpvi2.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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: Fri, 20 Jun 2025 10:17:46 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: eller.helmut@HIDDEN, 78813 <at> debbugs.gnu.org
> 
> "Eli Zaretskii" <eliz@HIDDEN> writes:
> 
> >> Date: Tue, 17 Jun 2025 15:28:57 +0000
> >> From: Pip Cet <pipcet@HIDDEN>
> >> Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>
> >>
> >> "Helmut Eller" <eller.helmut@HIDDEN> writes:
> >>
> >> > Tags: patch
> >> >
> >> > This is a proposal to make the variable face_attr_sym const.  Mostly so
> >> > that it's more obvious that it doesn't need to be traced by the GC.
> >>
> >> Makes sense to me, but should be on master.  Is this okay for master?
> >
> > What are the advantages of making this change on master?
> 
> As on feature/igc, the change only makes it harder to break things by
> changing the rest of the code; there's no functional change on either
> branch, and while Helmut's patch is likely to reduce code size a little,
> that's not the reason we should install it.
> 
> I don't know whether we actually finally agreed that unprotected static
> Lisp_Objects should be phased out, but IIRC that's what Gerd suggested
> very strongly.  This change is part of that effort.

Thanks, but I asked about this change on its own, not as part of some
effort (which AFAIU is on the igc branch, not on master).  IOW,
suppose we release Emacs 31 without the MPS support (something I hope
will not need to happen, but just for the sake of this sub-thread):
what would that change give us, considering the fact that this code
was there since Emacs 21?




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

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


Received: (at 78813) by debbugs.gnu.org; 20 Jun 2025 10:18:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 20 06:18:05 2025
Received: from localhost ([127.0.0.1]:48204 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSYot-00020V-HU
	for submit <at> debbugs.gnu.org; Fri, 20 Jun 2025 06:18:05 -0400
Received: from mail-10628.protonmail.ch ([79.135.106.28]:20165)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1uSYoq-0001yW-1t
 for 78813 <at> debbugs.gnu.org; Fri, 20 Jun 2025 06:18:01 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1750414672; x=1750673872;
 bh=jReKtXofw7EtO3sL4MZwzUlCQCEMCwIwOKK3sgG9al0=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=G7j4sR3O4uCw6L+oS+nf/Sbvbbv1v+JIbvITKl76FC7vE1p03QUlq3sLFLxLF3WkS
 dDnLUA2ruvLZjtpXhCe+9QUfRW6BJXrkGffE4aB56XfecsYJB35NJYbuKZCdhdTk6C
 9/D1cI8uD/B7CUEQjqCQ35naSwv9UReP72wF6jH/8m6PKPP7yJhzM22bzaJFqjwtib
 0sdqs7bQB8EYOPMfydcQI64D1b8tNvE+h3Eno1tt3zHrU5ijs07oz5Q2w9O1AMfyx+
 SCGQR2l1rPjYJLlg6GcWX6x43DVGZnskdmNNlYOYWR7uELoiBBLCEeleCuI9eA/Gu5
 wNxLSTSF6hPoQ==
Date: Fri, 20 Jun 2025 10:17:46 +0000
To: Eli Zaretskii <eliz@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
Message-ID: <878qlmpvi2.fsf@HIDDEN>
In-Reply-To: <86tt4emlch.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
 <86tt4emlch.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 0588b409ae760f4f0473307aafb1f3fb07be7e14
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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 (-)

"Eli Zaretskii" <eliz@HIDDEN> writes:

>> Date: Tue, 17 Jun 2025 15:28:57 +0000
>> From: Pip Cet <pipcet@HIDDEN>
>> Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>
>>
>> "Helmut Eller" <eller.helmut@HIDDEN> writes:
>>
>> > Tags: patch
>> >
>> > This is a proposal to make the variable face_attr_sym const.  Mostly s=
o
>> > that it's more obvious that it doesn't need to be traced by the GC.
>>
>> Makes sense to me, but should be on master.  Is this okay for master?
>
> What are the advantages of making this change on master?

As on feature/igc, the change only makes it harder to break things by
changing the rest of the code; there's no functional change on either
branch, and while Helmut's patch is likely to reduce code size a little,
that's not the reason we should install it.

I don't know whether we actually finally agreed that unprotected static
Lisp_Objects should be phased out, but IIRC that's what Gerd suggested
very strongly.  This change is part of that effort.

I'd prefer LISPSYM_INITIALLY to go away at some point soon, so we can at
least benchmark whether putting lispsym into MPS-managed memory makes
things better or worse.  However, the current code uses
LISPSYM_INITIALLY implicitly, so using it explicitly would make such
changes easier, not harder.

Helmut, I notice both your code and the existing code omit the
LFACE_FAMILY_INDEX case.  Do you happen to know if there's a reason for
that?  If there is, we should add a comment to make sure no one attempts
to reuse this vector in a context where the QCfamily symbol is needed.

An alternative would be to make face_attr_sym a function containing a
switch statement.  Either approach would reduce the different kinds of
unusual static Lisp_Object-containing structures by one: we either use
symbols in code, which is fine, or we do the same thing as the font
drivers (const Lisp_Objects initialized with LISPSYM_INITIALLY).

We could also simply add a comment explaining the unusual situation
(and, possibly, the LFACE_FAMILY_INDEX case).

Pip





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

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


Received: (at 78813) by debbugs.gnu.org; 17 Jun 2025 15:36:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 17 11:36:35 2025
Received: from localhost ([127.0.0.1]:60630 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uRYMU-0007w7-PB
	for submit <at> debbugs.gnu.org; Tue, 17 Jun 2025 11:36:35 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:55056)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uRYMR-0007ve-Iq
 for 78813 <at> debbugs.gnu.org; Tue, 17 Jun 2025 11:36:32 -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 1uRYMK-0004ms-2R; Tue, 17 Jun 2025 11:36:25 -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=CbeLoex79Uz3rH5HWk5+92rcIMRsf0xbvMGoZtQhGK8=; b=VVy0J60LEbOk
 cjEcaybEeQgLY1y00RNEWqALKVj/ECeYWIX5lUWkqgRaZpnZ1RydWHT1wFIhG8i/kaJzXJUV/+QeX
 zdXEr4f0/Kug1Es2jQ/e55VqHHTNkM/Tee/0gFpT3uOJhS8rGS+QD4zB68SPXruho7ugdWy5/GHCg
 mKOYg/67ENspvDHNoIFAgqsKfuUPkxL+93mhC4/jeaS+JQ73KtS/KkedxNUTunjk5rlcrbdNgamhc
 zgv41gSFs1yeqFCZtpSj87bM3oblmheX3I9hi1pBKhIvav3B7PDoBCIjHDBIs15NK4QzdQCySf+76
 agY9iD9An+Vx6GGKRwV+vQ==;
Date: Tue, 17 Jun 2025 18:36:14 +0300
Message-Id: <86tt4emlch.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
In-Reply-To: <87cyb2tmix.fsf@HIDDEN> (message from Pip Cet on Tue, 17
 Jun 2025 15:28:57 +0000)
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
References: <87zfe6eos9.fsf@HIDDEN> <87cyb2tmix.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, eller.helmut@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: Tue, 17 Jun 2025 15:28:57 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>
> 
> "Helmut Eller" <eller.helmut@HIDDEN> writes:
> 
> > Tags: patch
> >
> > This is a proposal to make the variable face_attr_sym const.  Mostly so
> > that it's more obvious that it doesn't need to be traced by the GC.
> 
> Makes sense to me, but should be on master.  Is this okay for master?

What are the advantages of making this change on master?




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

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


Received: (at 78813) by debbugs.gnu.org; 17 Jun 2025 15:29:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 17 11:29:10 2025
Received: from localhost ([127.0.0.1]:60433 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uRYFK-00070D-En
	for submit <at> debbugs.gnu.org; Tue, 17 Jun 2025 11:29:10 -0400
Received: from mail-10631.protonmail.ch ([79.135.106.31]:24849)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1uRYFH-0006z4-HP
 for 78813 <at> debbugs.gnu.org; Tue, 17 Jun 2025 11:29:08 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1750174140; x=1750433340;
 bh=U965UDRllRDC+18T/AqBWLOiJk+Glf30aq6uTswvwQc=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=i19xYxKpKcffTtdtHsSaTjbB4EdGpq6uCpn/j8kloXwKqC2RX8jPFisyzGjjKZH4f
 6qjmzy1ci8Zete7KGZAkf700CRZLK0cpQim4niBtfZhSqMMBpk222Rvbx0yDAJAnMh
 y6IUo8WKZILo/8AHgJuh/+Vnf3mzIUKhYSJauD0jMGMhZ1hEdPSO12KxaHII1CmzBF
 dE6UcbaBbUl8S+RuuNmizqt0I/M+LThFop5leVTKgMLbOqTKCDZ0Vcs0WSbMZmM505
 xJVIrZJAfY3dLu6IhdeBXP5x4yGBkjjuVd/oEKMICk4uLHZkTIhpEnkRvNPGOL//J4
 k6iqsr/cty2cw==
Date: Tue, 17 Jun 2025 15:28:57 +0000
To: Helmut Eller <eller.helmut@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#78813: feature/igc: [PATCH] Make the array face_attr_sym
 readonly
Message-ID: <87cyb2tmix.fsf@HIDDEN>
In-Reply-To: <87zfe6eos9.fsf@HIDDEN>
References: <87zfe6eos9.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: fdbe2c90456df2aa86c04bba29818d5b5a15ba8b
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78813
Cc: 78813 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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 (-)

"Helmut Eller" <eller.helmut@HIDDEN> writes:

> Tags: patch
>
> This is a proposal to make the variable face_attr_sym const.  Mostly so
> that it's more obvious that it doesn't need to be traced by the GC.

Makes sense to me, but should be on master.  Is this okay for master?

There are alternatives, such as using switch statements rather than a
const array, which is what the rest of the code in xfaces.c does.

In any case, we should also add a comment explaining the unusual GC
situation, unless we can resolve it entirely by using a staticpro'd
vector or something.

Pip





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

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


Received: (at submit) by debbugs.gnu.org; 17 Jun 2025 08:49:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 17 04:49:25 2025
Received: from localhost ([127.0.0.1]:53413 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uRS0S-0001Ek-Ps
	for submit <at> debbugs.gnu.org; Tue, 17 Jun 2025 04:49:25 -0400
Received: from lists.gnu.org ([2001:470:142::17]:35284)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eller.helmut@HIDDEN>)
 id 1uRS0P-0001E0-Tj
 for submit <at> debbugs.gnu.org; Tue, 17 Jun 2025 04:49:22 -0400
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 <eller.helmut@HIDDEN>)
 id 1uRS0J-0002mV-TN
 for bug-gnu-emacs@HIDDEN; Tue, 17 Jun 2025 04:49:15 -0400
Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <eller.helmut@HIDDEN>)
 id 1uRS0H-0002UC-Se
 for bug-gnu-emacs@HIDDEN; Tue, 17 Jun 2025 04:49:15 -0400
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-acae7e7587dso826696466b.2
 for <bug-gnu-emacs@HIDDEN>; Tue, 17 Jun 2025 01:49:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1750150152; x=1750754952; darn=gnu.org;
 h=mime-version:user-agent:message-id:date:subject:to:from:from:to:cc
 :subject:date:message-id:reply-to;
 bh=94rHYzG4ry2IyTxBhR/WQ4X5DsnVhYOWXvnEzHuuDw0=;
 b=UUKmjB7Cw2WyzvZ8J7W8+7gOZm4Io8tMjVRU8RPFbcrIGFlin3MlmgBi/VacpA7lfU
 VvAmHOIp7ffQjO6bDLAWH7bMlGxnLBYRkyAaLI44yCkol4zvJzZvFEmkxPwehCleDtkK
 tQ8tfjA3YNDuu3yh+Wx/W2lg4DuEYAhoEdsQ1aTpoSMJsX1Q8zdh3q6ITR64MzoHTheq
 IHjZHFKXD19PpW5PeB16/Yq5SMndxsLNcq6PbPXyTyW6b3QkY986p6HksF+7wUH3DUK8
 gA6mbZ7b0LLxAsNUzkx8rOG8xRyoYq93PoqwoGtSTxWkX59itWns04nPQeS6B8+HbQ8f
 Oxfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1750150152; x=1750754952;
 h=mime-version:user-agent:message-id:date:subject:to:from
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=94rHYzG4ry2IyTxBhR/WQ4X5DsnVhYOWXvnEzHuuDw0=;
 b=RJjfVsKrVUDAjQG/Juj+DTGmRrMOj8FDiOF8ntJFenkwYTrZHtCzuMVQkTEESI1oFB
 IDJaEJ4H/CyM55pLhl7A1pYFk9086UEtHEpjVuE8ofI7CFamt9Op8adR5Iz+FOQX6LHe
 Kw65yiuNusE50/DtSIK5Lu0D2WeU/M0/UaLzAOhl2DZPt0rymMKH4sgPvfFQqR/a4eDW
 utiLLXdjh9aZazjhvyb+J3ZaNzIf0MtUn5yDLp0g5phxAfKh51jPYuTpRCszay8Tyjco
 0xsRjnnUlwAvoU8FY3tdUz4VKqmYGjuUHPExTEW/yt7T1L7R/xJAcFEyiRNnU78sHg0F
 RYvg==
X-Gm-Message-State: AOJu0Ywq01O/z0qX9XAwKoXlcxcyNC6eu3dx+MaItaunwtMXnqGaZp9o
 fVrfB4UA9i+0XoU07HMiyKpRSfdHO44fBny8mghgLtKQckCYjsFIk75Os/h6Kw==
X-Gm-Gg: ASbGncvkiEpEiuL3cVqH9Kd/LFhCaBVgyLHmK7BYCTYdf3twc1GQ+A1MTYFhl0oNT+5
 ywpnZOUXOZ+kqmCV2ybPAgENkTIkMYwf66Z26jqOOM0E0Lc566Ju8ozhmcTgTArF9pt8ISKaVkG
 PLCVtTsGB6ilFv+H51qxL7IVwik12J+/MOlA3s75J1Uywnyk7qQmvkjogeYS1MbaOrM09puVPXZ
 CTa54EB/BVu2offSh5ScoQtUTe4NpLvElPkz0H3InKlKFC2LC9tAVIbnq7ZG5/aeId+YHmIXxfK
 tA7hgHMz2/Md+owgqmyQ3pCOgIfhk0a+Iyo+0iLuu7koR80dhAyhB2lxa4h1jiHlSsC/CEdP1Un
 ueQa/4yLIWaosUl6oNFg=
X-Google-Smtp-Source: AGHT+IELZqQj3masxluVM+fR6GSlAbf70CVZCvDFX9OovQfVy2NDyInpbQd00wVf7PlTGsF/3fiseg==
X-Received: by 2002:a17:906:4fca:b0:ade:3b84:8ef6 with SMTP id
 a640c23a62f3a-adfad3748b2mr1141836666b.23.1750150151582; 
 Tue, 17 Jun 2025 01:49:11 -0700 (PDT)
Received: from caladan (dial-184179.pool.broadband44.net. [212.46.184.179])
 by smtp.gmail.com with ESMTPSA id
 a640c23a62f3a-adec88ff06fsm832817866b.102.2025.06.17.01.49.10
 for <bug-gnu-emacs@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 17 Jun 2025 01:49:11 -0700 (PDT)
From: Helmut Eller <eller.helmut@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: feature/igc: [PATCH] Make the array face_attr_sym readonly
X-Debbugs-Cc: 
Date: Tue, 17 Jun 2025 10:49:10 +0200
Message-ID: <87zfe6eos9.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=2a00:1450:4864:20::62e;
 envelope-from=eller.helmut@HIDDEN; helo=mail-ej1-x62e.google.com
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.0 (+)
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.0 (/)

--=-=-=
Content-Type: text/plain

Tags: patch

This is a proposal to make the variable face_attr_sym const.  Mostly so
that it's more obvious that it doesn't need to be traced by the GC.


--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment;
 filename=0001-Make-the-array-face_attr_sym-readonly.patch

From 264db35650707c60bbcc5b848a8ac461f56bf6b5 Mon Sep 17 00:00:00 2001
From: Helmut Eller <eller.helmut@HIDDEN>
Date: Tue, 17 Jun 2025 09:38:05 +0200
Subject: [PATCH] Make the array face_attr_sym readonly

* src/xfaces.c (face_attr_sym): Make const and initialize.
(init_xfaces): Move initialization to declaration.
---
 src/xfaces.c | 42 +++++++++++++++++++++---------------------
 1 file changed, 21 insertions(+), 21 deletions(-)

diff --git a/src/xfaces.c b/src/xfaces.c
index 2ca68193876..ea8e97834dc 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -1813,7 +1813,27 @@ #define LFACEP(LFACE)					\
 
 
 /* Face attribute symbols for each value of LFACE_*_INDEX.  */
-static Lisp_Object face_attr_sym[LFACE_VECTOR_SIZE];
+static const Lisp_Object face_attr_sym[LFACE_VECTOR_SIZE] = {
+  [0] = LISPSYM_INITIALLY (Qface),
+  [LFACE_FOUNDRY_INDEX] = LISPSYM_INITIALLY (QCfoundry),
+  [LFACE_SWIDTH_INDEX] = LISPSYM_INITIALLY (QCwidth),
+  [LFACE_HEIGHT_INDEX] = LISPSYM_INITIALLY (QCheight),
+  [LFACE_WEIGHT_INDEX] = LISPSYM_INITIALLY (QCweight),
+  [LFACE_SLANT_INDEX] = LISPSYM_INITIALLY (QCslant),
+  [LFACE_UNDERLINE_INDEX] = LISPSYM_INITIALLY (QCunderline),
+  [LFACE_INVERSE_INDEX] = LISPSYM_INITIALLY (QCinverse_video),
+  [LFACE_FOREGROUND_INDEX] = LISPSYM_INITIALLY (QCforeground),
+  [LFACE_BACKGROUND_INDEX] = LISPSYM_INITIALLY (QCbackground),
+  [LFACE_STIPPLE_INDEX] = LISPSYM_INITIALLY (QCstipple),
+  [LFACE_OVERLINE_INDEX] = LISPSYM_INITIALLY (QCoverline),
+  [LFACE_STRIKE_THROUGH_INDEX] = LISPSYM_INITIALLY (QCstrike_through),
+  [LFACE_BOX_INDEX] = LISPSYM_INITIALLY (QCbox),
+  [LFACE_FONT_INDEX] = LISPSYM_INITIALLY (QCfont),
+  [LFACE_INHERIT_INDEX] = LISPSYM_INITIALLY (QCinherit),
+  [LFACE_FONTSET_INDEX] = LISPSYM_INITIALLY (QCfontset),
+  [LFACE_DISTANT_FOREGROUND_INDEX] = LISPSYM_INITIALLY (QCdistant_foreground),
+  [LFACE_EXTEND_INDEX] = LISPSYM_INITIALLY (QCextend),
+};
 
 #ifdef GLYPH_DEBUG
 
@@ -7382,26 +7402,6 @@ init_xfaces (void)
 	}
     }
 #endif
-
-  face_attr_sym[0] = Qface;
-  face_attr_sym[LFACE_FOUNDRY_INDEX] = QCfoundry;
-  face_attr_sym[LFACE_SWIDTH_INDEX] = QCwidth;
-  face_attr_sym[LFACE_HEIGHT_INDEX] = QCheight;
-  face_attr_sym[LFACE_WEIGHT_INDEX] = QCweight;
-  face_attr_sym[LFACE_SLANT_INDEX] = QCslant;
-  face_attr_sym[LFACE_UNDERLINE_INDEX] = QCunderline;
-  face_attr_sym[LFACE_INVERSE_INDEX] = QCinverse_video;
-  face_attr_sym[LFACE_FOREGROUND_INDEX] = QCforeground;
-  face_attr_sym[LFACE_BACKGROUND_INDEX] = QCbackground;
-  face_attr_sym[LFACE_STIPPLE_INDEX] = QCstipple;
-  face_attr_sym[LFACE_OVERLINE_INDEX] = QCoverline;
-  face_attr_sym[LFACE_STRIKE_THROUGH_INDEX] = QCstrike_through;
-  face_attr_sym[LFACE_BOX_INDEX] = QCbox;
-  face_attr_sym[LFACE_FONT_INDEX] = QCfont;
-  face_attr_sym[LFACE_INHERIT_INDEX] = QCinherit;
-  face_attr_sym[LFACE_FONTSET_INDEX] = QCfontset;
-  face_attr_sym[LFACE_DISTANT_FOREGROUND_INDEX] = QCdistant_foreground;
-  face_attr_sym[LFACE_EXTEND_INDEX] = QCextend;
 }
 
 void
-- 
2.39.5


--=-=-=--




Acknowledgement sent to Helmut Eller <eller.helmut@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#78813; 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: Mon, 23 Jun 2025 11:30:04 UTC

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