From: Christian Couder Date: Mon, 25 Jul 2016 21:28:47 GMT Subject: Re: [PATCH v10 12/12] bisect--helper: `get_terms` & `bisect_terms` shell function in C Message-ID: In-Reply-To: On Mon, Jul 25, 2016 at 6:53 PM, Junio C Hamano wrote: > Pranit Bauva writes: > >>> And why are the defines 1,2,4,8 ? >>> It looks as if a #define bitmap may be a better choice here ? >>> How do we do these kind of bit-wise opions otherwise ? > > We might want to ask if these should even be bitwise option. A word > with individually controllable bits (i.e. "flag word") makes sense > only when the bits within it are largely independent. But the code > does this pretty much upfront: > >>>> + if (term_defined != 0 && term_defined != TERM_BAD && >>>> + term_defined != TERM_GOOD && term_defined != TERM_NEW && >>>> + term_defined != TERM_OLD) >>>> + die(_("only one option among --term-bad, --term-good, " >>>> + "--term-new and --term-old can be used.")); > > which is a very strong indication that these bits are not. > > I suspect that OPTION_CMDMODE would be a better choice to group > these four options and mark them mutually incompatible automatically > than OPT_BIT? I must say that Pranit used that at one point, but it felt weird to me to use that for things that is not really a command.