avoid some overlong lines from posix urls, etc.
[gnulib.git] / doc / posix-headers / stdbool.texi
1 @node stdbool.h
2 @section @file{stdbool.h}
3
4 POSIX specification:@* @url{http://www.opengroup.org/susv3xbd/stdbool.h.html}
5
6 Gnulib module: stdbool
7
8 Portability problems fixed by Gnulib:
9 @itemize
10 @item
11 This header file is missing on some platforms:
12 AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1.
13 @item
14 Some compilers have bugs relating to @samp{bool}.
15 @item
16 This header file defines @code{true} incorrectly on some platforms:
17 OpenBSD 4.7 with gcc 2.95.
18 @end itemize
19
20 Portability problems not fixed by Gnulib:
21 @itemize
22 @item
23 @code{<stdbool.h>} must be #included before @samp{_Bool} can be used.
24 @item
25 You cannot assume that @code{_Bool} is a typedef; it might be a macro.
26 @item
27 Bit-fields of type @samp{bool} are not supported.  Portable code
28 should use @samp{unsigned int foo : 1;} rather than @samp{bool foo : 1;}.
29 @item
30 Casts and automatic conversions to @samp{bool} don't test against the
31 zero value or the null pointer, as they should.  Such casts should only
32 be used if the casted value is known to be equal to 0 or 1.
33 @item
34 You cannot assume that casting a floating point literal to @samp{bool} will
35 result in a constant expression.
36 @end itemize