On Sat, Dec 09, 2017 at 09:40:07PM +0100, Christian Couder wrote:
> The changes compared to v2 are:
>
> - s/_val/_arg/ in the name of the functions
> - s/val/arg/ in the name of the third argument of the functions
> - works with NULL as third argument of the functions
This whole series looks OK to me, but this third point made me wonder:
what would be the use of allowing NULL for the "arg" parameter?
I didn't see any use of this in the series, and I'm having trouble
figuring out how it would be useful. E.g., if I do:
if (skip_to_optional_arg(arg, "--foo", NULL))
...
what can I do in "..."? I know we matched _some_ type of "--foo", but I
cannot know whether it was "--foo" or "--foo=bar", nor what "bar" is. It
could only be used by some kind of vague validator to say "well, at
least this looks like an option that I _could_ parse if I wanted to".
So I guess I don't mind it, as it does the most reasonable thing it can
when passed NULL, but I would be surprised if we ever actually exercise
the code path.
-Peff