Subject: bug#75521: scratch/igc: Delete unused macro DEFVAR_LISP_NOPROX

From: Stefan Kangas <[email-masked]>
Date: Mon, 13 Jan 2025 21:09:02 +0000

Eli Zaretskii <[email-masked]> writes:

>> From: Stefan Kangas <[email-masked]>
>> Date: Mon, 13 Jan 2025 20:01:24 +0000
>> Cc: [email-masked], [email-masked]
>>
>> Eli Zaretskii <[email-masked]> writes:
>>
>> >> I'm curious why this was considered worth optimizing in the first place.
>> >
>> > What is the optimization here? DEFVAR_LISP_NOPRO or font_style_table?
>>
>> I was thinking of DEFVAR_LISP_NOPRO:
>
> AFAIU, it's there to avoid protecting something that is already
> protected.  staticvec[] is a static vector, so wasting slots there is
> best avoided.

Yes, indeed, but that seems like an optimization that is not worth
doing.  Not these days, at any rate.

It complicates the code, leading to confusion (case in point: this long
thread where many cycles were spent discussing it), and the performance
gains are not likely to even be measurable.

Note that with MPS, DEFVAR_LISP and DEFVAR_LISP_NOPRO are equivalent.
So by getting rid of DEFVAR_LISP_NOPRO, we would reduce the delta
between igc and master as a nice bonus.