Albert Chin wrote: > The HP-UX 11.23/IA aCC6 compiler has bool and _Bool. This generates an > error building something that includes gnulib's auto-generated stdbool.h: > "../include/stdbool.h", line 84: error #2084: invalid combination of > type specifiers > typedef bool _Bool; > ^ > > Patch below fixes this.
Thanks, I've applied an equivalent of your patch. Sorry for the extremely long delay. Bruno 2006-01-24 Bruno Haible <[EMAIL PROTECTED]> * stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler already has it. Report and patch by Albert Chin-A-Young <[EMAIL PROTECTED]> on 2005-11-26. *** stdbool_.h 24 Jan 2006 21:44:37 -0000 1.7 --- stdbool_.h 24 Jan 2006 21:49:18 -0000 *************** *** 70,76 **** (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int' (see ISO C 99 6.3.1.1.(2)). So we add a negative value to the enum; this ensures that '_Bool' promotes to 'int'. */ ! #if !(defined __cplusplus || defined __BEOS__) # if @HAVE__BOOL@ # if defined __HP_cc || defined __xlc__ /* Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when --- 70,83 ---- (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int' (see ISO C 99 6.3.1.1.(2)). So we add a negative value to the enum; this ensures that '_Bool' promotes to 'int'. */ ! #if defined __cplusplus || defined __BEOS__ ! /* A compiler known to have 'bool'. */ ! /* If the compiler already has both 'bool' and '_Bool', we can assume they ! are the same types. */ ! # if [EMAIL PROTECTED]@ ! typedef bool _Bool; ! # endif ! #else # if @HAVE__BOOL@ # if defined __HP_cc || defined __xlc__ /* Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when *************** *** 91,98 **** typedef enum { _Bool_must_promote_to_int = -1, false = 0, true = 1 } _Bool; # endif # endif - #else - typedef bool _Bool; #endif #define bool _Bool --- 98,103 ---- _______________________________________________ bug-gnulib mailing list bug-gnulib@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnulib