GNU bug report logs - #63288
30.0.50; Emacs 30 packages fail to build with native comp on some machines

Previous Next

Package: emacs;

Reported by: Brian Leung <leungbk <at> posteo.net>

Date: Fri, 5 May 2023 04:00:02 UTC

Severity: normal

Found in version 30.0.50

Done: Pip Cet <pipcet <at> protonmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Thierry Volpiatto <thievol <at> posteo.net>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Pip Cet <pipcet <at> protonmail.com>, Stefan Kangas <stefankangas <at> gmail.com>, 63288 <at> debbugs.gnu.org, Thierry Volpiatto <thievol <at> posteo.net>, Eli Zaretskii <eliz <at> gnu.org>, acorallo <at> gnu.org
Subject: bug#63288: [PATCH] Mark cl-proclaim, cl-declaim, and cl-declare as obsolete
Date: Wed, 19 Feb 2025 16:32:31 +0000
[Message part 1 (text/plain, inline)]
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>> No, in some cases you must use (cl-declare (special ...)), and no you
>> can't use defvar in such cases, so if you intend to remove/deprecate
>
> Could you show us an example?

I used it in helm--completion-in-region to pass PROMPT and
REQUIRE-MATCH, don't know if it still needed, however
removing/deprecating cl-declare remove a nice feature IMHO like the
ability to do things like this:

(defmacro my-with-progress (&rest body)
  `(let ((reporter (make-progress-reporter "Updating...")))
     (progn
       ,@body)))

(defun my-updating ()
  (cl-declare (special reporter))
  (my-with-progress
   (cl-loop for elm in '(a b c d e f g)
            do (progn
                 (sit-for 1)
                 (progress-reporter-update reporter))
            collect elm)))

of course you can use a defvar in this case, but it is more handy to do
like this.

Sorry I don't have other examples in mind right now.

-- 
Thierry
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 131 days ago.

Previous Next


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