On Fri, Jun 09, 2017 at 08:17:29PM +0200, SZEDER Gábor wrote: > rev_info.early_output started out as an unsigned int in cdcefbc97 (Add > "--early-output" log flag for interactive GUI use, 2007-11-03), but > later it was turned into a single bit in a bit field in cc243c3ce > (show: --ignore-missing, 2011-05-18) without explanation, though its > users still expect it to be a regular integer type. Consequently, any > even number given via '--early-output=<N>' effectively disabled the > feature. > > Turn it back into an unsigned int, restoring its original data type. This confused me for a moment, as on my first read it seems like the obvious solution is to normalize the input to a bit-field, like: revs->early_output = !!atoi(optarg); But the "users still expect" bit was a bit subtle to me, as I thought you meant users of Git. But you mean that the feature itself is not a boolean, but rather an integer count of how much early output to show. I'm not sure if I was just being thick or if that point (and the fact that --early-output has basically been a noop since 2011!) should be made more explicit. Given that nobody noticed, I kind of wonder if we should consider ripping the feature out entirely. -Peff