GNU bug report logs -
#51368
29.0.50; `cl-case' should error on incorrect use
Previous Next
Reported by: Philipp Stephani <p.stephani2 <at> gmail.com>
Date: Sun, 24 Oct 2021 07:53:01 UTC
Severity: normal
Tags: moreinfo
Found in version 29.0.50
Done: Stefan Kangas <stefankangas <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#51368: 29.0.50; `cl-case' should error on incorrect use
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 51368 <at> debbugs.gnu.org.
--
51368: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=51368
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Lars Ingebrigtsen <larsi <at> gnus.org> writes:
> Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>
>> BTW, there's a third issue which is that
>>
>> (cl-case EXP
>> ((a b) FOO)
>> ((a c) BAR))
>>
>> won't warn about the duplicate `a`.
>>
>> After fixing this, many/most uses of `quote` will already emit
>> a warning, so maybe it would make the quote/function part of your second
>> patch unnecessary.
>
> I think it's nice to have an explicit error case for the quote case so
> that the warning can be better, though, so I've pushed Philipps patches
> to Emacs 29.
>
> But this test case should also emit a warning. Philipp, you don't
> happen to have a fix for that one, too? đ
If I'm reading this right, it seems like the patches here were pushed to
master, but the bug was left open. I'm therefore closing this bug report.
If this conclusion is incorrect, please reply to this email (use "Reply
to all" in your email client) and we can reopen the bug report.
[Message part 3 (message/rfc822, inline)]
This form demonstrates a few incorrect uses of `cl-case':
(cl-case a
(nil 0) ; doesn't match anything
(t 1) ; matches everything, but too early
('foo 2)) ; matches `quote' in addition to `foo'
It would be nice if `cl-case' would signal an error or at least warn
about these at macroexpansion time, since they are somewhat subtle and
easy to get wrong.
In GNU Emacs 29.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.30, cairo version 1.16.0)
of 2021-10-24
Repository revision: aea4af5119fdf130f1df7190478a23c6777f92a2
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux rodete
Configured using:
'configure --enable-gcc-warnings=warn-only
--enable-gtk-deprecation-warnings --without-pop --with-mailutils
--enable-checking=all --enable-check-lisp-object-type --with-modules
'CFLAGS=-O0 -ggdb3''
Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG SECCOMP
SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB
Important settings:
value of $LC_TIME: en_DK.utf8
value of $LANG: en_US.utf8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message rmc dired dired-loaddefs rfc822
mml mml-sec epa epg rfc6068 epg-config gnus-util rmail rmail-loaddefs
time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils phst skeleton derived pcase ffap thingatpt url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util url-parse auth-source cl-seq eieio eieio-core
cl-macs eieio-loaddefs password-cache json map url-vars mailcap rx
gnutls puny dbus xml seq gv subr-x byte-opt bytecomp byte-compile cconv
compile text-property-search comint ansi-color ring cl-loaddefs cl-lib
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)
Memory information:
((conses 16 68529 4717)
(symbols 48 8401 3)
(strings 32 24306 1951)
(string-bytes 1 786068)
(vectors 16 15413)
(vector-slots 8 204610 8730)
(floats 8 26 36)
(intervals 56 225 0)
(buffers 992 11))
--
Google Germany GmbH
Erika-Mann-StraĂe 33
80636 MĂŒnchen
GeschĂ€ftsfĂŒhrer: Paul Manicle, Halimah DeLaine Prado
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Diese E-Mail ist vertraulich. Falls Sie diese fÀlschlicherweise erhalten haben
sollten, leiten Sie diese bitte nicht an jemand anderes weiter, löschen Sie
alle Kopien und AnhÀnge davon und lassen Sie mich bitte wissen, dass die E-Mail
an die falsche Person gesendet wurde.
This e-mail is confidential. If you received this communication by mistake,
please donât forward it to anyone else, please erase all copies and
attachments, and please let me know that it has gone to the wrong person.
This bug report was last modified 1 year and 236 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.