=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/include/stdbool.h,v retrieving revision 1.2 retrieving revision 1.3 diff -c -r1.2 -r1.3 *** src/include/stdbool.h 1999/09/24 23:09:09 1.2 --- src/include/stdbool.h 2004/10/02 12:55:31 1.3 *************** *** 1,4 **** ! /* $OpenBSD: stdbool.h,v 1.2 1999/09/24 23:09:09 espie Exp $ */ /* * Written by Marc Espie, September 25, 1999 --- 1,4 ---- ! /* $OpenBSD: stdbool.h,v 1.3 2004/10/02 12:55:31 espie Exp $ */ /* * Written by Marc Espie, September 25, 1999 *************** *** 8,13 **** --- 8,21 ---- #ifndef _STDBOOL_H_ #define _STDBOOL_H_ + #ifndef __cplusplus + + #if defined(__GNUC__) && __GNUC__ >= 3 + /* Support for _C99: type _Bool is already built-in. */ + #define false 0 + #define true 1 + + #else /* `_Bool' type must promote to `int' or `unsigned int'. */ typedef enum { false = 0, *************** *** 18,25 **** --- 26,42 ---- #define false false #define true true + #endif + /* User visible type `bool' is provided as a macro which may be redefined */ #define bool _Bool + + #else /* __cplusplus */ + #define _Bool bool + #define bool bool + #define false false + #define true true + #endif /* __cplusplus */ /* Inform that everything is fine */ #define __bool_true_false_are_defined 1