Subject: Re: bug#39919: 26.3; Incorrect byte-compiler warning

From: Mike Woolley <[email-masked]>
Date: Sat, 7 Mar 2020 12:52:14 +0000

Yes that fixes the issue in the test cases I sent.
Also looks good in my real code where I noticed the problem!

Thanks Richard,
Mike

> On 7 Mar 2020, at 04:23, Richard Stallman <[email-masked]> wrote:
> 
> [[[ To any NSA and FBI agents reading my email: please consider    ]]]
> [[[ whether defending the US Constitution against all enemies,     ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> 
>> Hmm, no, actually, there were already two old bug reports about this
>> issue: bug#16206 and 31232.  The RESULT argument of `dotimes' had been
>> deprecated as a result of that discussion.
> 
> I can't easily obtain that discussion.  Perhaps that discussion
> turned up some other reason to deprecated that argument.  But if it
> was solely to avoid these warnings, I am surprised it is hard.
> 
> Does this patch fix the problem?
> 
> diff -u /home/rms/emacs-git/build-oct-2/lisp/subr.el.\~1\~ /home/rms/emacs-git/build-oct-2/lisp/subr.el
> --- /home/rms/emacs-git/build-oct-2/lisp/subr.el.~1~	2019-10-02 11:07:09.046065358 -0400
> +++ /home/rms/emacs-git/build-oct-2/lisp/subr.el	2020-03-06 19:31:20.053693281 -0500
> @@ -281,7 +281,7 @@
>                (setq ,counter (1+ ,counter)))
>              ,@(if (cddr spec)
>                    ;; FIXME: This let often leads to "unused var" warnings.
> -                   `((let ((,(car spec) ,counter)) ,@(cddr spec))))))
> +                   `((let ((,(car spec) ,counter)) ,(car spec) ,@(cddr spec))))))
>       `(let ((,temp ,end)
>              (,(car spec) ,start))
>          (while (< ,(car spec) ,temp)
> 
> Diff finished.  Fri Mar  6 19:34:23 2020
> 
> -- 
> Dr Richard Stallman
> Chief GNUisance of the GNU Project (https://gnu.org)
> Founder, Free Software Foundation (https://fsf.org)
> Internet Hall-of-Famer (https://internethalloffame.org)
> 
>