configure.ac: Don't invoke ACX_HEADER_STDBOOL.
gcc: * configure.ac: Don't invoke ACX_HEADER_STDBOOL. * configure, config.in: Regenerate. * system.h: Unconditionally define bool as unsigned char, BOOL_BITFIELD as unsigned int. * domwalk.h: Use BOOL_BITFIELD. libcpp: * configure.ac: Don't invoke ACX_HEADER_STDBOOL. * configure, config.in: Regenerate. * system.h: Unconditionally define bool as unsigned char, BOOL_BITFIELD as unsigned int. * .cvsignore: New file. From-SVN: r83020
This commit is contained in:
parent
9ade247982
commit
2fac9c017f
12 changed files with 267 additions and 434 deletions
|
@ -275,13 +275,6 @@ extern void abort (void);
|
|||
((GCC_VERSION >= 2007) || (__STDC_VERSION__ >= 199901L))
|
||||
#endif
|
||||
|
||||
/* 1 if we have _Bool. */
|
||||
#ifndef HAVE__BOOL
|
||||
# define HAVE__BOOL \
|
||||
((GCC_VERSION >= 3000) || (__STDC_VERSION__ >= 199901L))
|
||||
#endif
|
||||
|
||||
|
||||
/* Be conservative and only use enum bitfields with GCC.
|
||||
FIXME: provide a complete autoconf test for buggy enum bitfields. */
|
||||
|
||||
|
@ -291,14 +284,6 @@ extern void abort (void);
|
|||
#define ENUM_BITFIELD(TYPE) unsigned int
|
||||
#endif
|
||||
|
||||
/* We only use bool bitfields with gcc3. Some supposedly C99
|
||||
compilers don't handle them correctly. */
|
||||
#if (GCC_VERSION >= 3000)
|
||||
#define BOOL_BITFIELD _Bool
|
||||
#else
|
||||
#define BOOL_BITFIELD unsigned int
|
||||
#endif
|
||||
|
||||
#ifndef offsetof
|
||||
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *) 0)->MEMBER)
|
||||
#endif
|
||||
|
@ -310,26 +295,25 @@ extern void abort (void);
|
|||
#define __builtin_expect(a, b) (a)
|
||||
#endif
|
||||
|
||||
/* Provide some sort of boolean type. We use stdbool.h if it's
|
||||
available. This must be after all inclusion of system headers,
|
||||
as some of them will mess us up. */
|
||||
/* Provide a fake boolean type. We make no attempt to use the
|
||||
C99 _Bool, as it may not be available in the bootstrap compiler,
|
||||
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
|
||||
|
||||
#ifdef HAVE_STDBOOL_H
|
||||
# include <stdbool.h>
|
||||
#else
|
||||
# if !HAVE__BOOL
|
||||
typedef char _Bool;
|
||||
# endif
|
||||
# define bool _Bool
|
||||
# define true 1
|
||||
# define false 0
|
||||
#endif
|
||||
#define bool unsigned char
|
||||
#define true 1
|
||||
#define false 0
|
||||
|
||||
/* Some compilers do not allow the use of unsigned char in bitfields. */
|
||||
#define BOOL_BITFIELD unsigned int
|
||||
|
||||
/* Poison identifiers we do not want to use. */
|
||||
#if (GCC_VERSION >= 3000)
|
||||
#undef calloc
|
||||
#undef strdup
|
||||
|
@ -359,5 +343,4 @@ typedef char _Bool;
|
|||
#pragma GCC poison bcopy bzero bcmp rindex
|
||||
|
||||
#endif /* GCC >= 3.0 */
|
||||
|
||||
#endif /* ! LIBCPP_SYSTEM_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue