Re: Conversion to generic boolean

Dmitry Torokhov
2006-08-31T03:50:18Z

On Tuesday 29 August 2006 01:58, Jan Engelhardt wrote:
>
> >> I was kinda planning on merging it ;)
> >>
> >> I can't say that I'm in love with the patches, but they do improve the
> >> situation.
> >>
> >> At present we have >50 different definitions of TRUE and gawd knows how
> >> many private implementations of various flavours of bool.
> >>
> >> In that context, Richard's approach of giving the kernel a single
> >> implementation of bool/true/false and then converting things over to use
> >> it
> >> makes sense. The other approach would be to go through and nuke the lot,
> >> convert them to open-coded 0/1.
> >
> > Well... we are programming in C here, aren't we ;)
>
> I like it for the annotation we get.
>
> int fluff;
> if(fluff == 0)
>
> This does not tell if fluff is an integer or a boolean (that is, what the
> programmer intended to do -- not the 'int' the compiler sees).
> If it had been if(!fluff), it would give a hint, but a lot of places also have
> !x where x really is intended to be an integer (and should have been x==0 or
> y==NULL resp.)
>

Bool would not help much either unless declaration is immediately follows
use. I like Alan Sterns proposal ofencode return value in function name
better - actions should always return < 0/0 and predicates should always
be boolean equivalent.

--
Dmitry