Re: ternary vs double exclamation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 04 Jan 2015 18:43:22 -0500, John de la Garza said:
> On Sat, Jan 03, 2015 at 11:20:29PM -0500, Valdis.Kletnieks@xxxxxx wrote:
> > On Sat, 03 Jan 2015 18:54:00 -0500, John de la Garza said:
> >
> > > It should not be assumed that true will always be 1 as defined in
> > > include/linux/stddef.h, right?
> >
> > No, I mean use an actual 'bool' type rather than 'int'.  Consider this from
> > kernel/softirq.c:
>
> yes, bool has two possible values true and false
>
> from include/linux/stddef.h:
> enum {
> 	        false   = 0,
> 		true	= 1
> };

Note that's an *anonynous* enum, which defines the two values, but
it *doesn't* define an enum type that can be used to force type safety.

No, if you're converting a variable from int to bool, the *important* line is
from include/linux/types.h:

typedef _Bool                   bool;

which ensures more type safety than the enum does.

Attachment: pgpTvbXGZJ7Og.pgp
Description: PGP signature

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux