1--- bison-2.3-orig/lib/stdbool_.h	2006-01-26 13:31:49.000000000 +0000
2+++ bison-2.3/lib/stdbool_.h	2008-03-28 05:24:05.000000000 +0000
3@@ -55,7 +55,7 @@
4 
5 /* BeOS <sys/socket.h> already #defines false 0, true 1.  We use the same
6    definitions below, but temporarily we have to #undef them.  */
7-#ifdef __BEOS__
8+#if defined(__BEOS__) && !defined(__HAIKU__)
9 # include <OS.h> /* defines bool but not _Bool */
10 # undef false
11 # undef true
12@@ -70,7 +70,7 @@
13    (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int'
14    (see ISO C 99 6.3.1.1.(2)).  So we add a negative value to the
15    enum; this ensures that '_Bool' promotes to 'int'.  */
16-#if defined __cplusplus || defined __BEOS__
17+#if defined __cplusplus || (defined __BEOS__ && !defined(__HAIKU__))
18   /* A compiler known to have 'bool'.  */
19   /* If the compiler already has both 'bool' and '_Bool', we can assume they
20      are the same types.  */
21