Re: [PATCH] list-objects-filter-options: fix function name in BUG
From: Martin Ågren <hidden>
Date: 2020-11-17 18:02:55
On Tue, 17 Nov 2020 at 03:13, Jeff King [off-list ref] wrote:
On Sat, Nov 14, 2020 at 09:43:26AM +0100, Martin Ågren wrote:quoted
Fix the function name we give in the BUG message. It's "config", not "choice".Yep, obviously an improvement. But as a general rule, I don't think we even need to include function names here. The message would look like: BUG: list-objects-filter-options.c:20: list_object_filter_choice_name: invalid argument '3' which already tells us where the code is[1]. Perhaps: BUG("invalid filter choice enum: %d", c); would be shorter but equally informative (I don't overly care here, since the idea is that nobody sees it, but just making a point about the future).
Having the function name or something else making the string unique
across the codebase could be useful if the compiler doesn't support
variadic macros -- we'll fall back to using a function instead of a
macro, and can't use __FILE__ and __LINE__. (You obviously know all of
this, having written d8193743e0 ("usage.c: add BUG() function",
2017-05-12).)
Now, this here BUG shouldn't be a "freak" bug which happens to trigger
under very special circumstances, and where it's not even clear which of
25 equal BUG messages it is that we're seeing. If you add a new enum
value and forget to add a case in this function, you should hit this BUG
quite quickly and very reliably.
All of that said, "don't overly care" also matches my feeling pretty
well.
Martin