GNU bug report logs -
#22291
25.1.50; REGRESSION: Emacs 24.3 breaks loading cl-macs to get macro `case'
Previous Next
Reported by: Drew Adams <drew.adams <at> oracle.com>
Date: Sat, 2 Jan 2016 03:24:01 UTC
Severity: wishlist
Tags: notabug, wontfix
Found in version 25.1.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 22291 <at> debbugs.gnu.org (full text, mbox):
> Date: Fri, 1 Jan 2016 19:23:03 -0800 (PST)
> From: Drew Adams <drew.adams <at> oracle.com>
>
> This regression was introduced in Emacs 24.3. Prior to that, code could
> use (require 'cl-macs) to have macros such as `case' provided at
> runtime.
>
> (eval-when-compile (require 'cl)) still works, of course. But neither
> (eval-when-compile (require 'cl-macs)) nor (require 'cl-macs) defines
> macro `case', starting with Emacs 24.3.
>
> This gratuitously breaks any existing code that loads cl-macs expecting
> to get the definition of `case'. This breakage should not be necessary.
From NEWS.24, under "Changes in Specialized Modes and Packages in
Emacs 24.3":
*** CL's main entry is now (require 'cl-lib).
`cl-lib' is like the old `cl' except that it uses the namespace cleanly;
i.e., all its definitions have the "cl-" prefix (and internal definitions
use the "cl--" prefix).
If `cl' provided a feature under the name `foo', then `cl-lib'
provides it under the name `cl-foo' instead; with the exceptions of the
few `cl' definitions that had to use `foo*' to avoid conflicts with
pre-existing Elisp entities. These have been renamed to `cl-foo'
rather than `cl-foo*'.
IOW, this was a deliberate change, and you should either use 'cl-case'
with Emacs versions since 24.3, or use 'cl' instead of 'cl-macs'.
OK?
This bug report was last modified 9 years and 144 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.