Re: [PATCH v3 07/25] sequencer: completely revamp the "todo" script parsing
- From
Jeff King <peff@peff.net>
- Date
- Oct 15, 2016, 17:46 UTC
- Message-ID
- <20161015174656.fmgk3le2b34nnjpx@sigill.intra.peff.net>
- In-Reply-To
- <d9f4f658-94fb-cb9e-7da8-3a2fac120a9e@web.de>
On Sat, Oct 15, 2016 at 07:40:15PM +0200, Torsten Bögershausen wrote:
Show 11 quoted lines
> > I wonder if: > > > > if ((int)command < ARRAY_SIZE(todo_command_strings)) > > > > silences the warning (I suppose size_t is probably an even better type, > > though obviously it does not matter in practice). > > > Both do (silence the warning) > > enum may be signed or unsigned, right ? > So the size_t variant seams to be a better choice
Good catch. It technically needs to check the lower bound, too. In theory, if somebody wanted to add an enum value that is negative, you'd use a signed cast and check against both 0 and ARRAY_SIZE(). In practice, that is nonsense for this case, and using an unsigned type means that any negative values become large, and the check catches them.
-Peff