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


Message #110 received at 63288 <at> debbugs.gnu.org (full text, mbox):

From: "Basil L. Contovounesios" <basil <at> contovou.net>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: Pip Cet <pipcet <at> protonmail.com>, acorallo <at> gnu.org,
 Eli Zaretskii <eliz <at> gnu.org>, Stefan Monnier <monnier <at> iro.umontreal.ca>,
 63288 <at> debbugs.gnu.org
Subject: Re: bug#63288: [PATCH] Mark cl-proclaim, cl-declaim, and cl-declare
 as obsolete
Date: Wed, 19 Feb 2025 18:53:18 +0100
Stefan Kangas [2025-02-19 01:08 +0000] wrote:

> The code for the cl-lib declarations, i.e. (info "(cl) Declarations"),
> is hacky, hard to maintain, and not well-understood by anyone.  It
> doesn't seem to provide any benefits over using standard Emacs Lisp
> facilities such as `declare`, `defvar`, and setting byte-compiler
> variables.

Do we need the optimize/safety flag for cl-defstruct that Stefan M.
mentioned before we can declare cl-proclaim and cl-declaim obsolete?

Just to be clear, I mean that I'm not aware of an alternative to the
following:

  ;; -*- lexical-binding: t -*-
  (require 'cl-lib)
  (cl-declaim (optimize (safety 0)))
  (cl-defstruct foo a b)

which removes foo-p checks from the accessors foo-a and foo-b.

Either way, (info "(cl) Structures") may also need updating.

Thanks,
-- 
Basil




This bug report was last modified 132 days ago.

Previous Next


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