interpret-trailers: mark unused "unset" parameters in option callbacks
commitd775365db321c9f05c12809438d3c801d7e445af
authorJeff King <peff@peff.net>
Thu, 31 Aug 2023 21:22:15 +0000 (31 17:22 -0400)
committerJunio C Hamano <gitster@pobox.com>
Tue, 5 Sep 2023 21:48:17 +0000 (5 14:48 -0700)
treed011352881439bc4a612051077a80467176e77f0
parentabf2952f83f657ff40a731aa4b370350711029f4
interpret-trailers: mark unused "unset" parameters in option callbacks

There are a few parse-option callbacks that do not look at their "unset"
parameters, but also do not set PARSE_OPT_NONEG. At first glance this
seems like a bug, as we'd ignore "--no-if-exists", etc.

But they do work fine, because when "unset" is true, then "arg" is NULL.
And all three functions pass "arg" on to helper functions which do the
right thing with the NULL.

Note that this shortcut would not be correct if any callback used
PARSE_OPT_NOARG (in which case "arg" would be NULL but "unset" would be
false). But none of these do.

So the code is fine as-is. But we'll want to mark the unused "unset"
parameters to quiet -Wunused-parameter. I've also added a comment to
make this rather subtle situation more explicit.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/interpret-trailers.c