On 2013-03-15 16:43, H Hartley Sweeten wrote:
I guess the real question is, what's the underlying type of a bool?
It must be an unsigned "something" or the compiler would complain.
And does assigning a bit field to the bool actually save any space?
<linux/types.h> typedef _Bool bool;
_Bool is a standard type in C99
I found this:
http://gcc.gnu.org/ml/gcc-patches/2000-10/msg01127.html
But honestly still don't know what a _Bool is... :-)
It's a special unsigned integer type. Converting any scalar value to
_Bool should produce 0 or 1 (false or true). Assigning a scalar value
to a _Bool involves such a conversion so the value 0 or 1 should be
stored no matter what try and store in there. _Bool bit-fields aren't
the same as the _Bool type though, and the standard only says what shall
happen if you store the value 0 or 1 in there and doesn't say what
happens if you store a different value in there.
Search for n869.pdf if interested. That's only a draft of the C99
standard, but is the closest you'll find to the actual standard without
shelling out the dosh for the actual standard.
--
-=( Ian Abbott @ MEV Ltd. E-mail: <[email protected]> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel