Thread (8 messages) flat view 8 messages, 4 authors, 2020-11-18

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help