From 71d5938381e8e5d0ff736121ff55a3c2ec9605da Mon Sep 17 00:00:00 2001 From: Roger Sayle Date: Wed, 8 Feb 2006 23:57:21 +0000 Subject: [PATCH] tree.def (CHAR_TYPE): Remove. * tree.def (CHAR_TYPE): Remove. * dbxout.c (dbxout_type): Delete dead handling of CHAR_TYPE. * dwarf2out.c (base_type_die, is_base_type): Likewise. (gen_type_die) : Remove handling of CHAR_TYPE arrays. (gen_string_type_die): Delete unreachable function. * tree-pretty-print.c (dump_generic_node): Don't handle CHAR_TYPE. * tree.c (build_int_cst_wide, type_contains_placeholder_1, type_hash_eq, variably_modified_type_p, walk_type_fields): Likewise. * tree.h (NUMERICAL_TYPE_CHECK, INTEGRAL_TYPE_P): Likewise. * builtins.c (type_to_class): Likewise. * fold-const.c (fold_convert, build_range_check, merge_ranges): Likewise. * expr.c (count_type_elements): Likewise. * c-pretty-print.c (pp_c_type_specifier): Likewise. * stor-layout.c (layout_type): Likewise. * ipa-type-escape.c (type_to_consider): Likewise. * gimplify.c (omp_firstprivatize_type_sizes, gimplify_type_sizes): Likewise. * explow.c (promote_mode): Likewise. * tree-sra.c (is_sra_scalar_type): Likewise. * varasm.c (output_constant): Likewise. * tree-inline.c (remap_type_1): Likewise. * convert.c (convert_to_pointer, convert_to_real, convert_to_integer, convert_to_complex): Likewise. From-SVN: r110775 --- gcc/ChangeLog | 28 ++++++++++++++++++++++++++++ gcc/builtins.c | 1 - gcc/c-pretty-print.c | 3 +-- gcc/convert.c | 6 +----- gcc/dbxout.c | 20 ++------------------ gcc/dwarf2out.c | 30 +----------------------------- gcc/explow.c | 5 +++-- gcc/expr.c | 1 - gcc/fold-const.c | 11 ++++------- gcc/gimplify.c | 4 +--- gcc/ipa-type-escape.c | 3 +-- gcc/stor-layout.c | 8 ++++---- gcc/tree-inline.c | 1 - gcc/tree-pretty-print.c | 1 - gcc/tree-sra.c | 4 ++-- gcc/tree.c | 13 ++++--------- gcc/tree.def | 9 +++------ gcc/tree.h | 6 ++---- gcc/varasm.c | 3 +-- 19 files changed, 58 insertions(+), 99 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ae49e0f..232da90 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,31 @@ +2006-02-08 Roger Sayle + + * tree.def (CHAR_TYPE): Remove. + * dbxout.c (dbxout_type): Delete dead handling of CHAR_TYPE. + * dwarf2out.c (base_type_die, is_base_type): Likewise. + (gen_type_die) : Remove handling of CHAR_TYPE arrays. + (gen_string_type_die): Delete unreachable function. + + * tree-pretty-print.c (dump_generic_node): Don't handle CHAR_TYPE. + * tree.c (build_int_cst_wide, type_contains_placeholder_1, + type_hash_eq, variably_modified_type_p, walk_type_fields): Likewise. + * tree.h (NUMERICAL_TYPE_CHECK, INTEGRAL_TYPE_P): Likewise. + * builtins.c (type_to_class): Likewise. + * fold-const.c (fold_convert, build_range_check, + merge_ranges): Likewise. + * expr.c (count_type_elements): Likewise. + * c-pretty-print.c (pp_c_type_specifier): Likewise. + * stor-layout.c (layout_type): Likewise. + * ipa-type-escape.c (type_to_consider): Likewise. + * gimplify.c (omp_firstprivatize_type_sizes, + gimplify_type_sizes): Likewise. + * explow.c (promote_mode): Likewise. + * tree-sra.c (is_sra_scalar_type): Likewise. + * varasm.c (output_constant): Likewise. + * tree-inline.c (remap_type_1): Likewise. + * convert.c (convert_to_pointer, convert_to_real, + convert_to_integer, convert_to_complex): Likewise. + 2006-02-08 Daniel Berlin * df-scan.c (df_def_record_1): A set destination may diff --git a/gcc/builtins.c b/gcc/builtins.c index fd551da..e0cf55e 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -1585,7 +1585,6 @@ type_to_class (tree type) { case VOID_TYPE: return void_type_class; case INTEGER_TYPE: return integer_type_class; - case CHAR_TYPE: return char_type_class; case ENUMERAL_TYPE: return enumeral_type_class; case BOOLEAN_TYPE: return boolean_type_class; case POINTER_TYPE: return pointer_type_class; diff --git a/gcc/c-pretty-print.c b/gcc/c-pretty-print.c index 5160223..6701567 100644 --- a/gcc/c-pretty-print.c +++ b/gcc/c-pretty-print.c @@ -1,5 +1,5 @@ /* Subroutines common to both C and C++ pretty-printers. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis This file is part of GCC. @@ -311,7 +311,6 @@ pp_c_type_specifier (c_pretty_printer *pp, tree t) case VOID_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case INTEGER_TYPE: case REAL_TYPE: if (TYPE_NAME (t)) diff --git a/gcc/convert.c b/gcc/convert.c index 805c6f5..ba5f6fd 100644 --- a/gcc/convert.c +++ b/gcc/convert.c @@ -1,6 +1,6 @@ /* Utility routines for data type conversion for GCC. Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1997, 1998, - 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GCC. @@ -53,7 +53,6 @@ convert_to_pointer (tree type, tree expr) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: if (TYPE_PRECISION (TREE_TYPE (expr)) != POINTER_SIZE) expr = fold_build1 (NOP_EXPR, lang_hooks.types.type_for_size (POINTER_SIZE, 0), @@ -313,7 +312,6 @@ convert_to_real (tree type, tree expr) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: return build1 (FLOAT_EXPR, type, expr); case COMPLEX_TYPE: @@ -447,7 +445,6 @@ convert_to_integer (tree type, tree expr) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: /* If this is a logical operation, which just returns 0 or 1, we can change the type of the expression. */ @@ -729,7 +726,6 @@ convert_to_complex (tree type, tree expr) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: return build2 (COMPLEX_EXPR, type, convert (subtype, expr), convert (subtype, integer_zero_node)); diff --git a/gcc/dbxout.c b/gcc/dbxout.c index c2ac7de..f936ac6 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1,6 +1,7 @@ /* Output dbx-format symbol table information from GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This file is part of GCC. @@ -1911,23 +1912,6 @@ dbxout_type (tree type, int full) stabstr_S (";0;"); break; - case CHAR_TYPE: - if (use_gnu_debug_info_extensions) - { - stabstr_S ("@s"); - stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type)); - stabstr_S (";-20;"); - } - else - { - /* Output the type `char' as a subrange of itself. - That is what pcc seems to do. */ - stabstr_C ('r'); - dbxout_type_index (char_type_node); - stabstr_S (TYPE_UNSIGNED (type) ? ";0;255;" : ";0;127;"); - } - break; - case BOOLEAN_TYPE: if (use_gnu_debug_info_extensions) { diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 06e835b..fc82d1a 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -4146,7 +4146,6 @@ static void gen_inlined_subroutine_die (tree, dw_die_ref, int); static void gen_field_die (tree, dw_die_ref); static void gen_ptr_to_mbr_type_die (tree, dw_die_ref); static dw_die_ref gen_compile_unit_die (const char *); -static void gen_string_type_die (tree, dw_die_ref); static void gen_inheritance_die (tree, tree, dw_die_ref); static void gen_member_die (tree, dw_die_ref); static void gen_struct_or_union_type_die (tree, dw_die_ref); @@ -8105,7 +8104,6 @@ base_type_die (tree type) switch (TREE_CODE (type)) { - case CHAR_TYPE: case INTEGER_TYPE: if (TYPE_STRING_FLAG (type)) { @@ -8201,7 +8199,6 @@ is_base_type (tree type) case REAL_TYPE: case COMPLEX_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: return 1; case ARRAY_TYPE: @@ -12187,24 +12184,6 @@ gen_compile_unit_die (const char *filename) return die; } -/* Generate a DIE for a string type. */ - -static void -gen_string_type_die (tree type, dw_die_ref context_die) -{ - dw_die_ref type_die - = new_die (DW_TAG_string_type, scope_die_for (type, context_die), type); - - equate_type_number_to_die (type, type_die); - - /* ??? Fudge the string length attribute for now. - TODO: add string length info. */ -#if 0 - string_length_attribute (TYPE_MAX_VALUE (TYPE_DOMAIN (type))); - bound_representation (upper_bound, 0, 'u'); -#endif -} - /* Generate the DIE for a base class. */ static void @@ -12506,13 +12485,7 @@ gen_type_die (tree type, dw_die_ref context_die) break; case ARRAY_TYPE: - if (TYPE_STRING_FLAG (type) && TREE_CODE (TREE_TYPE (type)) == CHAR_TYPE) - { - gen_type_die (TREE_TYPE (type), context_die); - gen_string_type_die (type, context_die); - } - else - gen_array_type_die (type, context_die); + gen_array_type_die (type, context_die); break; case VECTOR_TYPE: @@ -12567,7 +12540,6 @@ gen_type_die (tree type, dw_die_ref context_die) case REAL_TYPE: case COMPLEX_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: /* No DIEs needed for fundamental types. */ break; diff --git a/gcc/explow.c b/gcc/explow.c index eea0e56..677ef7a 100644 --- a/gcc/explow.c +++ b/gcc/explow.c @@ -1,6 +1,7 @@ /* Subroutines for manipulating rtx's in semantically interesting ways. Copyright (C) 1987, 1991, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This file is part of GCC. @@ -724,7 +725,7 @@ promote_mode (tree type, enum machine_mode mode, int *punsignedp, { #ifdef PROMOTE_FUNCTION_MODE case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case REAL_TYPE: case OFFSET_TYPE: + case REAL_TYPE: case OFFSET_TYPE: #ifdef PROMOTE_MODE if (for_call) { diff --git a/gcc/expr.c b/gcc/expr.c index 832cc52..537ce1e 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -4648,7 +4648,6 @@ count_type_elements (tree type, bool allow_flexarr) case REAL_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case POINTER_TYPE: case OFFSET_TYPE: case REFERENCE_TYPE: diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 242a0ff..01734a6 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -1,6 +1,6 @@ /* Fold a constant sub-tree into a single node for C-compiler Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GCC. @@ -1995,7 +1995,7 @@ fold_convert (tree type, tree arg) switch (TREE_CODE (type)) { - case INTEGER_TYPE: case CHAR_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: + case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: case POINTER_TYPE: case REFERENCE_TYPE: case OFFSET_TYPE: if (TREE_CODE (arg) == INTEGER_CST) @@ -2032,7 +2032,7 @@ fold_convert (tree type, tree arg) switch (TREE_CODE (orig)) { - case INTEGER_TYPE: case CHAR_TYPE: + case INTEGER_TYPE: case BOOLEAN_TYPE: case ENUMERAL_TYPE: case POINTER_TYPE: case REFERENCE_TYPE: return fold_build1 (FLOAT_EXPR, type, arg); @@ -2051,7 +2051,7 @@ fold_convert (tree type, tree arg) case COMPLEX_TYPE: switch (TREE_CODE (orig)) { - case INTEGER_TYPE: case CHAR_TYPE: + case INTEGER_TYPE: case BOOLEAN_TYPE: case ENUMERAL_TYPE: case POINTER_TYPE: case REFERENCE_TYPE: case REAL_TYPE: @@ -4101,7 +4101,6 @@ build_range_check (tree type, tree exp, int in_p, tree low, tree high) { case INTEGER_TYPE: case ENUMERAL_TYPE: - case CHAR_TYPE: /* There is no requirement that LOW be within the range of ETYPE if the latter is a subtype. It must, however, be within the base type of ETYPE. So be sure we do the subtraction in that type. */ @@ -4280,7 +4279,6 @@ merge_ranges (int *pin_p, tree *plow, tree *phigh, int in0_p, tree low0, break; /* FALLTHROUGH */ case INTEGER_TYPE: - case CHAR_TYPE: if (tree_int_cst_equal (low0, TYPE_MIN_VALUE (TREE_TYPE (low0)))) low0 = 0; @@ -4304,7 +4302,6 @@ merge_ranges (int *pin_p, tree *plow, tree *phigh, int in0_p, tree low0, break; /* FALLTHROUGH */ case INTEGER_TYPE: - case CHAR_TYPE: if (tree_int_cst_equal (high1, TYPE_MAX_VALUE (TREE_TYPE (high1)))) high1 = 0; diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 8f95127..da800bb 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -1,6 +1,6 @@ /* Tree lowering pass. This pass converts the GENERIC functions-as-trees tree representation into the GIMPLE form. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Major work done by Sebastian Pop , Diego Novillo and Jason Merrill . @@ -4176,7 +4176,6 @@ omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *ctx, tree type) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case REAL_TYPE: omp_firstprivatize_variable (ctx, TYPE_MIN_VALUE (type)); omp_firstprivatize_variable (ctx, TYPE_MAX_VALUE (type)); @@ -5803,7 +5802,6 @@ gimplify_type_sizes (tree type, tree *list_p) case INTEGER_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case REAL_TYPE: gimplify_one_sizepos (&TYPE_MIN_VALUE (type), list_p); gimplify_one_sizepos (&TYPE_MAX_VALUE (type), list_p); diff --git a/gcc/ipa-type-escape.c b/gcc/ipa-type-escape.c index 3f61d4e..2d9e7ba 100644 --- a/gcc/ipa-type-escape.c +++ b/gcc/ipa-type-escape.c @@ -1,5 +1,5 @@ /* Type based alias analysis. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. Contributed by Kenneth Zadeck This file is part of GCC. @@ -267,7 +267,6 @@ type_to_consider (tree type) switch (TREE_CODE (type)) { case BOOLEAN_TYPE: - case CHAR_TYPE: case COMPLEX_TYPE: case ENUMERAL_TYPE: case INTEGER_TYPE: diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c index cb57cb3..a987977 100644 --- a/gcc/stor-layout.c +++ b/gcc/stor-layout.c @@ -1,6 +1,7 @@ /* C-compiler utilities for types and variables storage layout Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1996, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This file is part of GCC. @@ -1592,7 +1593,6 @@ layout_type (tree type) case INTEGER_TYPE: case ENUMERAL_TYPE: - case CHAR_TYPE: if (TREE_CODE (TYPE_MIN_VALUE (type)) == INTEGER_CST && tree_int_cst_sgn (TYPE_MIN_VALUE (type)) >= 0) TYPE_UNSIGNED (type) = 1; @@ -1998,8 +1998,8 @@ set_sizetype (tree type) } } -/* TYPE is an integral type, i.e., an INTEGRAL_TYPE, ENUMERAL_TYPE, - BOOLEAN_TYPE, or CHAR_TYPE. Set TYPE_MIN_VALUE and TYPE_MAX_VALUE +/* TYPE is an integral type, i.e., an INTEGRAL_TYPE, ENUMERAL_TYPE + or BOOLEAN_TYPE. Set TYPE_MIN_VALUE and TYPE_MAX_VALUE for TYPE, based on the PRECISION and whether or not the TYPE IS_UNSIGNED. PRECISION need not correspond to a width supported natively by the hardware; for example, on a machine with 8-bit, diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 99bc068..07085b1 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -266,7 +266,6 @@ remap_type_1 (tree type, copy_body_data *id) case REAL_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: t = TYPE_MIN_VALUE (new); if (t && TREE_CODE (t) != INTEGER_CST) walk_tree (&TYPE_MIN_VALUE (new), copy_body_r, id, NULL); diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index 62b5899..fdf3f13 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -508,7 +508,6 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, case VECTOR_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: { unsigned int quals = TYPE_QUALS (node); enum tree_code_class class; diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index 6b7e991..37e2a3a 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -1,7 +1,7 @@ /* Scalar Replacement of Aggregates (SRA) converts some structure references into scalar references, exposing them to the scalar optimizers. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Contributed by Diego Novillo This file is part of GCC. @@ -165,7 +165,7 @@ is_sra_scalar_type (tree type) enum tree_code code = TREE_CODE (type); return (code == INTEGER_TYPE || code == REAL_TYPE || code == VECTOR_TYPE || code == ENUMERAL_TYPE || code == BOOLEAN_TYPE - || code == CHAR_TYPE || code == POINTER_TYPE || code == OFFSET_TYPE + || code == POINTER_TYPE || code == OFFSET_TYPE || code == REFERENCE_TYPE); } diff --git a/gcc/tree.c b/gcc/tree.c index 9e912df..d66e0c6 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -1,6 +1,7 @@ /* Language-independent node constructors for parse phase of GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This file is part of GCC. @@ -823,7 +824,6 @@ build_int_cst_wide (tree type, unsigned HOST_WIDE_INT low, HOST_WIDE_INT hi) break; case INTEGER_TYPE: - case CHAR_TYPE: case OFFSET_TYPE: if (TYPE_UNSIGNED (type)) { @@ -2179,7 +2179,6 @@ type_contains_placeholder_1 (tree type) case COMPLEX_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: case POINTER_TYPE: case OFFSET_TYPE: case REFERENCE_TYPE: @@ -4058,7 +4057,6 @@ type_hash_eq (const void *va, const void *vb) case INTEGER_TYPE: case REAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: return ((TYPE_MAX_VALUE (a->type) == TYPE_MAX_VALUE (b->type) || tree_int_cst_equal (TYPE_MAX_VALUE (a->type), TYPE_MAX_VALUE (b->type))) @@ -5008,9 +5006,8 @@ build_nonstandard_integer_type (unsigned HOST_WIDE_INT precision, } /* Create a range of some discrete type TYPE (an INTEGER_TYPE, - ENUMERAL_TYPE, BOOLEAN_TYPE, or CHAR_TYPE), with - low bound LOWVAL and high bound HIGHVAL. - if TYPE==NULL_TREE, sizetype is used. */ + ENUMERAL_TYPE or BOOLEAN_TYPE), with low bound LOWVAL and + high bound HIGHVAL. If TYPE is NULL, sizetype is used. */ tree build_range_type (tree type, tree lowval, tree highval) @@ -5675,7 +5672,6 @@ variably_modified_type_p (tree type, tree fn) case REAL_TYPE: case ENUMERAL_TYPE: case BOOLEAN_TYPE: - case CHAR_TYPE: /* Scalar types are variably modified if their end points aren't constant. */ RETURN_TRUE_IF_VAR (TYPE_MIN_VALUE (type)); @@ -7261,7 +7257,6 @@ walk_type_fields (tree type, walk_tree_fn func, void *data, case BOOLEAN_TYPE: case ENUMERAL_TYPE: case INTEGER_TYPE: - case CHAR_TYPE: case REAL_TYPE: WALK_SUBTREE (TYPE_MIN_VALUE (type)); WALK_SUBTREE (TYPE_MAX_VALUE (type)); diff --git a/gcc/tree.def b/gcc/tree.def index 5810a29..bc227e20 100644 --- a/gcc/tree.def +++ b/gcc/tree.def @@ -124,8 +124,8 @@ DEFTREECODE (BLOCK, "block", tcc_exceptional, 0) /* The ordering of the following codes is optimized for the checking macros in tree.h. Changing the order will degrade the speed of the - compiler. OFFSET_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, CHAR_TYPE, - INTEGER_TYPE, REAL_TYPE, POINTER_TYPE. */ + compiler. OFFSET_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, INTEGER_TYPE, + REAL_TYPE, POINTER_TYPE. */ /* An offset is a pointer relative to an object. The TREE_TYPE field is the type of the object at the offset. @@ -150,16 +150,13 @@ DEFTREECODE (ENUMERAL_TYPE, "enumeral_type", tcc_type, 0) INTEGRAL_TYPE. */ DEFTREECODE (BOOLEAN_TYPE, "boolean_type", tcc_type, 0) -/* CHAR in Java; not used in C. Looks like an INTEGRAL_TYPE. */ -DEFTREECODE (CHAR_TYPE, "char_type", tcc_type, 0) - /* Integer types in all languages, including char in C. Also used for sub-ranges of other discrete types. Has components TYPE_MIN_VALUE, TYPE_MAX_VALUE (expressions, inclusive) and TYPE_PRECISION (number of bits used by this type). In the case of a subrange type in Pascal, the TREE_TYPE of this will point at the supertype (another INTEGER_TYPE, - or an ENUMERAL_TYPE, CHAR_TYPE, or BOOLEAN_TYPE). + or an ENUMERAL_TYPE or BOOLEAN_TYPE). Otherwise, the TREE_TYPE is zero. */ DEFTREECODE (INTEGER_TYPE, "integer_type", tcc_type, 0) diff --git a/gcc/tree.h b/gcc/tree.h index 13505ac..b4e390d 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -1,6 +1,6 @@ /* Front-end tree definitions for GNU compiler. Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GCC. @@ -853,8 +853,7 @@ extern void omp_clause_range_check_failed (const tree, const char *, int, TREE_NOT_CHECK3 (T, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE) #define NUMERICAL_TYPE_CHECK(T) \ - TREE_CHECK5 (T, INTEGER_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, \ - CHAR_TYPE, REAL_TYPE) + TREE_CHECK4 (T, INTEGER_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, REAL_TYPE) /* In all nodes that are expressions, this is the data type of the expression. In POINTER_TYPE nodes, this is the type that the pointer points to. @@ -931,7 +930,6 @@ extern void omp_clause_range_check_failed (const tree, const char *, int, #define INTEGRAL_TYPE_P(TYPE) \ (TREE_CODE (TYPE) == ENUMERAL_TYPE \ || TREE_CODE (TYPE) == BOOLEAN_TYPE \ - || TREE_CODE (TYPE) == CHAR_TYPE \ || TREE_CODE (TYPE) == INTEGER_TYPE) /* Nonzero if TYPE represents a scalar floating-point type. */ diff --git a/gcc/varasm.c b/gcc/varasm.c index b398b59..68bd026 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -1,6 +1,6 @@ /* Output variables, constants and external declarations, for GNU compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GCC. @@ -3748,7 +3748,6 @@ output_constant (tree exp, unsigned HOST_WIDE_INT size, unsigned int align) Otherwise, break and ensure SIZE is the size written. */ switch (code) { - case CHAR_TYPE: case BOOLEAN_TYPE: case INTEGER_TYPE: case ENUMERAL_TYPE: -- 2.7.4