GNU bug report logs - #75964
Switching the Emacs build to -Wswitch-enum in src/

Previous Next

Package: emacs;

Reported by: Pip Cet <pipcet <at> protonmail.com>

Date: Fri, 31 Jan 2025 09:41:02 UTC

Severity: wishlist

Full log


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

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Pip Cet <pipcet <at> protonmail.com>
Cc: acorallo <at> gnu.org, Eli Zaretskii <eliz <at> gnu.org>, eggert <at> cs.ucla.edu,
 75964 <at> debbugs.gnu.org, stefankangas <at> gmail.com
Subject: Re: bug#75964: Switching the Emacs build to -Wswitch-enum in src/
Date: Tue, 04 Feb 2025 13:17:36 -0500
>> should return 2, because I'd prefer that it aborts and/or that the
>> programmer have a way to say explicitly what should happen.  `default:`
>> works for that in the case where you have listed *all* the enum's
>> values, but then you get stiffed in the case where you add an enum value
>> because the compiler won't tell you that you forgot to update this
>> `switch` accordingly.
>
> But... that's precisely what -Wswitch-enum does!  It warns about a
> forgotten case even though there is also a default label!

But IIUC that breaks the other case, where you do want to use `default:`
to mean "any other (valid) enum value".


        Stefan





This bug report was last modified 127 days ago.

Previous Next


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