Bump to 1.14.1
[platform/upstream/augeas.git] / doc / posix-headers / stdbool.texi
1 @node stdbool.h
2 @section @file{stdbool.h}
3
4 POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/basedefs/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 @samp{_Bool} cannot be used before @code{<stdbool.h>} is included, or if
24 the program is intended to be compiled by a C++ compiler.
25 @item
26 You cannot assume that @code{_Bool} is a typedef; it might be a macro.
27 @item
28 Bit-fields of type @samp{bool} are not supported.  Portable code
29 should use @samp{unsigned int foo : 1;} rather than @samp{bool foo : 1;}.
30 @item
31 Casts and automatic conversions to @samp{bool} don't test against the
32 zero value or the null pointer, as they should.  Such casts should only
33 be used if the value is known to be equal to 0 or 1.
34 @item
35 You cannot assume that casting a floating point literal to @samp{bool} will
36 result in a constant expression.
37 @end itemize