defaults.h (BOOL_TYPE_SIZE): Move default here from cp/decl.c.

* defaults.h (BOOL_TYPE_SIZE): Move default here from cp/decl.c.
        * c-decl.c (c_init_decl_processing): Use it.
        * config/rs6000/darwin.h (BOOL_TYPE_SIZE): Define to INT_TYPE_SIZE.
        * config/i960/i960.h (BOOL_TYPE_SIZE): Don't define.
        * config/mcore/mcore.h (BOOL_TYPE_SIZE): Don't define.

From-SVN: r53089
This commit is contained in:
Jason Merrill 2002-05-03 08:09:35 -04:00 committed by Jason Merrill
parent 3b03c671ad
commit 609688f3c4
8 changed files with 22 additions and 15 deletions

View File

@ -1,3 +1,11 @@
2002-05-02 Jason Merrill <jason@redhat.com>
* defaults.h (BOOL_TYPE_SIZE): Move default here from cp/decl.c.
* c-decl.c (c_init_decl_processing): Use it.
* config/rs6000/darwin.h (BOOL_TYPE_SIZE): Define to INT_TYPE_SIZE.
* config/i960/i960.h (BOOL_TYPE_SIZE): Don't define.
* config/mcore/mcore.h (BOOL_TYPE_SIZE): Don't define.
2002-05-03 Kazu Hirata <kazu@cs.umass.edu>
* regrename.c: Fix formatting.

View File

@ -2913,8 +2913,7 @@ c_init_decl_processing ()
boolean_true_node = integer_one_node;
boolean_false_node = integer_zero_node;
/* With GCC, C99's _Bool is always of size 1. */
c_bool_type_node = make_unsigned_type (CHAR_TYPE_SIZE);
c_bool_type_node = make_unsigned_type (BOOL_TYPE_SIZE);
TREE_SET_CODE (c_bool_type_node, BOOLEAN_TYPE);
TYPE_MAX_VALUE (c_bool_type_node) = build_int_2 (1, 0);
TREE_TYPE (TYPE_MAX_VALUE (c_bool_type_node)) = c_bool_type_node;

View File

@ -1174,11 +1174,6 @@ struct cum_args { int ca_nregparms; int ca_nstackparms; };
#define SLOW_BYTE_ACCESS 1
/* Force sizeof(bool) == 1 to maintain binary compatibility; otherwise, the
change in SLOW_BYTE_ACCESS would have changed it to 4. */
#define BOOL_TYPE_SIZE CHAR_TYPE_SIZE
/* We assume that the store-condition-codes instructions store 0 for false
and some other value for true. This is the value stored for true. */

View File

@ -254,9 +254,6 @@ extern const char * mcore_stack_increment_string;
words. */
#define LONG_LONG_TYPE_SIZE 64
/* the size of the boolean type -- in C++; */
#define BOOL_TYPE_SIZE 8
/* Allocation boundary (in *bits*) for storing arguments in argument list. */
#define PARM_BOUNDARY 32

View File

@ -233,3 +233,7 @@ Boston, MA 02111-1307, USA. */
space/speed. */
#undef MAX_LONG_TYPE_SIZE
#define MAX_LONG_TYPE_SIZE 32
/* For binary compatibility with 2.95; Darwin C APIs use bool from
stdbool.h, which was an int-sized enum in 2.95. */
#define BOOL_TYPE_SIZE INT_TYPE_SIZE

View File

@ -1,3 +1,7 @@
2002-05-03 Jason Merrill <jason@redhat.com>
* decl.c (BOOL_TYPE_SIZE): Move default to defaults.h.
2002-04-30 Mark Mitchell <mark@codesourcery.com>
ABI change, returning simple classes from functions.

View File

@ -49,11 +49,6 @@ Boston, MA 02111-1307, USA. */
#include "c-pragma.h"
#include "diagnostic.h"
#ifndef BOOL_TYPE_SIZE
/* `bool' has size and alignment `1', on all platforms. */
#define BOOL_TYPE_SIZE CHAR_TYPE_SIZE
#endif
static tree grokparms PARAMS ((tree));
static const char *redeclaration_error_message PARAMS ((tree, tree));

View File

@ -293,6 +293,11 @@ do { \
#define CHAR_TYPE_SIZE BITS_PER_UNIT
#endif
#ifndef BOOL_TYPE_SIZE
/* `bool' has size and alignment `1', on almost all platforms. */
#define BOOL_TYPE_SIZE CHAR_TYPE_SIZE
#endif
#ifndef SHORT_TYPE_SIZE
#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
#endif