* system.h (bool, true, false): Don't redefine as preprocessor macros
in C++.
From-SVN: r85135
+2004-07-25 Bernardo Innocenti <bernie@develer.com>
+
+ * system.h (bool, true, false): Don't redefine as preprocessor macros
+ in C++.
+
2004-07-24 Roger Sayle <roger@eyesopen.com>
* expmed.c (init_expmed): A signed modulus by a power of two is
and even if it is, it is liable to be buggy.
This must be after all inclusion of system headers, as some of
them will mess us up. */
-#undef bool
-#undef true
-#undef false
+
#undef TRUE
#undef FALSE
-#define bool unsigned char
-#define true 1
-#define false 0
+#ifdef __cplusplus
+ /* Obsolete. */
+# define TRUE true
+# define FALSE false
+#else /* !__cplusplus */
+# undef bool
+# undef true
+# undef false
+
+# define bool unsigned char
+# define true 1
+# define false 0
+
+ /* Obsolete. */
+# define TRUE true
+# define FALSE false
+#endif /* !__cplusplus */
-#define TRUE true
-#define FALSE false
/* Some compilers do not allow the use of unsigned char in bitfields. */
#define BOOL_BITFIELD unsigned int