--- Begin Message ---
Subject: |
25.1.50; REGRESSION: Emacs 24.3 breaks loading cl-macs to get macro `case' |
Date: |
Fri, 1 Jan 2016 19:23:03 -0800 (PST) |
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.
In GNU Emacs 25.1.50.1 (i686-pc-mingw32)
of 2015-12-10
Bzr revision: 6148555ee5a3d0139ae517803718b3e0357933c7
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
`configure --prefix=/c/Devel/emacs/snapshot/trunk --enable-checking=yes
--enable-check-lisp-object-type --without-compress-install 'CFLAGS=-Og
-ggdb3' LDFLAGS=-Lc:/Devel/emacs/lib 'CPPFLAGS=-DGC_MCHECK=1
-Ic:/Devel/emacs/include''
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#22291: 25.1.50; REGRESSION: Emacs 24.3 breaks loading cl-macs to get macro `case' |
Date: |
Sat, 02 Jan 2016 19:44:44 +0200 |
> Date: Sat, 2 Jan 2016 09:28:02 -0800 (PST)
> From: Drew Adams <address@hidden>
> Cc: address@hidden
>
> > 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'.
>
> I know all of that. Just because something was decided does not mean
> that that decision was the best decision possible, or even wise.
>
> This is a gratuitous change that breaks backward compatibility. That's
> the point. Gratuitous - unnecessary.
>
> Personally I tend to require `cl', and at compile-time only, to get
> such macros. But it is entirely reasonable that someone might require
> `cl-macs' - at runtime or compile time - to get such a macro definition.
>
> And if some user does not compile the code that requires the library
> that provides the macro, then s?he will now get the entire `cl' at
> runtime, instead of getting only the much-smaller `cl-macs' at runtime.
>
> > OK?
>
> Not IMHO.
So I guess we will have to agree to disagree on this one.
>From my POV, this is not a bug, but a deliberate change that is well
documented.
Closing.
--- End Message ---