diff options
author | Neil Booth <neil@daikokuya.demon.co.uk> | 2002-04-01 08:46:10 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2002-04-01 08:46:10 +0000 |
commit | ceef8ce4b43a36a75e3c7df8a8696866fc398a56 (patch) | |
tree | a06146fa6279ee4373ef4b809f8c3aedca99fb3f /gcc/ada | |
parent | c7a39ea995852db80b150e9b24c68f56461aff6d (diff) | |
download | gcc-ceef8ce4b43a36a75e3c7df8a8696866fc398a56.zip gcc-ceef8ce4b43a36a75e3c7df8a8696866fc398a56.tar.gz gcc-ceef8ce4b43a36a75e3c7df8a8696866fc398a56.tar.bz2 |
c-common.c (unsigned_conversion_warning, [...]): Use new hooks.
* c-common.c (unsigned_conversion_warning, convert_and_check,
unsigned_type, signed_type, shorten_compare,
c_common_get_alias_set, c_common_nodes_and_builtins): Use new hooks.
(unsigned_type, signed_type, signed_or_unsigned_type): Rename.
* c-common.h (unsigned_type, signed_type, signed_or_unsigned_type):
New.
* c-decl.c (grokdeclarator): Update.
* c-format.c (check_format_types): Update.
* c-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
* c-typeck.c (build_binary_op, convert_for_assignment): Update.
* convert.c (convert_to_integer): Use new hooks.
* expmed.c (make_tree): Use new hooks.
* expr.c (store_expr): Use new hooks.
* fold-const.c (operand_equal_for_comparison_p, build_range_check,
all_ones_mask_p, unextend, fold): Use new hooks.
* langhooks.h (struct lang_hooks_for_types): New hooks.
* tree.h (signed_or_unsigned_type, signed_type,
unsigned_type): Remove.
ada:
* gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
Rename.
* misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
* trans.c (tree_transform, convert_with_check): Update.
* utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
Rename.
cp:
* cp-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
* decl.c (grokdeclarator): Update.
* mangle.c (write_integer_cst): Update.
* typeck.c (build_binary_op): Update.
f:
* com.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
(unsigned_type, signed_type, signed_or_unsigned_type): Rename.
java:
* expr.c (build_java_binop): Update.
* java-tree.h (java_signed_type, java_unsigned_type,
java_signed_or_unsigned_type): Update.
* lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
* parse.y (patch_binop): Update.
* typeck.c (signed_or_unsigned_type, unsigned_type,
signed_type): Update.
objc:
* objc-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
From-SVN: r51684
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/ada/gigi.h | 6 | ||||
-rw-r--r-- | gcc/ada/misc.c | 6 | ||||
-rw-r--r-- | gcc/ada/trans.c | 14 | ||||
-rw-r--r-- | gcc/ada/utils.c | 6 |
5 files changed, 29 insertions, 13 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 062c7e6..8e7367f 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,13 @@ +2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> + + * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type): + Rename. + * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE, + LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New. + * trans.c (tree_transform, convert_with_check): Update. + * utils.c (unsigned_type, signed_type, signed_or_unsigned_type): + Rename. + 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk> * gigi.h (finish_incomplete_decl): Rename. diff --git a/gcc/ada/gigi.h b/gcc/ada/gigi.h index de05d4e..32fcaef 100644 --- a/gcc/ada/gigi.h +++ b/gcc/ada/gigi.h @@ -430,14 +430,14 @@ extern tree gnat_type_for_size PARAMS ((unsigned, int)); extern tree gnat_type_for_mode PARAMS ((enum machine_mode, int)); /* Return the unsigned version of a TYPE_NODE, a scalar type. */ -extern tree unsigned_type PARAMS ((tree)); +extern tree gnat_unsigned_type PARAMS ((tree)); /* Return the signed version of a TYPE_NODE, a scalar type. */ -extern tree signed_type PARAMS ((tree)); +extern tree gnat_signed_type PARAMS ((tree)); /* Return a type the same as TYPE except unsigned or signed according to UNSIGNEDP. */ -extern tree signed_or_unsigned_type PARAMS ((int, tree)); +extern tree gnat_signed_or_unsigned_type PARAMS ((int, tree)); /* This routine is called in tree.c to print an error message for invalid use of an incomplete type. */ diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index 8edbba4..866afc3 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -124,6 +124,12 @@ static rtx gnat_expand_expr PARAMS ((tree, rtx, enum machine_mode, #define LANG_HOOKS_TYPE_FOR_MODE gnat_type_for_mode #undef LANG_HOOKS_TYPE_FOR_SIZE #define LANG_HOOKS_TYPE_FOR_SIZE gnat_type_for_size +#undef LANG_HOOKS_SIGNED_TYPE +#define LANG_HOOKS_SIGNED_TYPE gnat_signed_type +#undef LANG_HOOKS_UNSIGNED_TYPE +#define LANG_HOOKS_UNSIGNED_TYPE gnat_unsigned_type +#undef LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE +#define LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE gnat_signed_or_unsigned_type const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c index c943a00..19c7b01 100644 --- a/gcc/ada/trans.c +++ b/gcc/ada/trans.c @@ -1348,7 +1348,7 @@ tree_transform (gnat_node) /* 'Length or 'Range_Length. */ { tree gnu_compute_type - = signed_or_unsigned_type + = gnat_signed_or_unsigned_type (0, get_base_type (gnu_result_type)); gnu_result @@ -1867,10 +1867,10 @@ tree_transform (gnat_node) so we may need to choose a different type. */ if (Nkind (gnat_node) == N_Op_Shift_Right && ! TREE_UNSIGNED (gnu_type)) - gnu_type = unsigned_type (gnu_type); + gnu_type = gnat_unsigned_type (gnu_type); else if (Nkind (gnat_node) == N_Op_Shift_Right_Arithmetic && TREE_UNSIGNED (gnu_type)) - gnu_type = signed_type (gnu_type); + gnu_type = gnat_signed_type (gnu_type); if (gnu_type != gnu_result_type) { @@ -4674,17 +4674,17 @@ convert_with_check (gnat_type, gnu_expr, overflow_p, range_p, truncate_p) comparing them properly. Likewise, convert the upper bounds to unsigned types. */ if (INTEGRAL_TYPE_P (gnu_in_basetype) && TREE_UNSIGNED (gnu_in_basetype)) - gnu_in_lb = convert (signed_type (gnu_in_basetype), gnu_in_lb); + gnu_in_lb = convert (gnat_signed_type (gnu_in_basetype), gnu_in_lb); if (INTEGRAL_TYPE_P (gnu_in_basetype) && ! TREE_UNSIGNED (gnu_in_basetype)) - gnu_in_ub = convert (unsigned_type (gnu_in_basetype), gnu_in_ub); + gnu_in_ub = convert (gnat_unsigned_type (gnu_in_basetype), gnu_in_ub); if (INTEGRAL_TYPE_P (gnu_base_type) && TREE_UNSIGNED (gnu_base_type)) - gnu_out_lb = convert (signed_type (gnu_base_type), gnu_out_lb); + gnu_out_lb = convert (gnat_signed_type (gnu_base_type), gnu_out_lb); if (INTEGRAL_TYPE_P (gnu_base_type) && ! TREE_UNSIGNED (gnu_base_type)) - gnu_out_ub = convert (unsigned_type (gnu_base_type), gnu_out_ub); + gnu_out_ub = convert (gnat_unsigned_type (gnu_base_type), gnu_out_ub); /* Check each bound separately and only if the result bound is tighter than the bound on the input type. Note that all the diff --git a/gcc/ada/utils.c b/gcc/ada/utils.c index 6d8f637..58b7af6 100644 --- a/gcc/ada/utils.c +++ b/gcc/ada/utils.c @@ -2022,7 +2022,7 @@ gnat_type_for_mode (mode, unsignedp) /* Return the unsigned version of a TYPE_NODE, a scalar type. */ tree -unsigned_type (type_node) +gnat_unsigned_type (type_node) tree type_node; { tree type = gnat_type_for_size (TYPE_PRECISION (type_node), 1); @@ -2046,7 +2046,7 @@ unsigned_type (type_node) /* Return the signed version of a TYPE_NODE, a scalar type. */ tree -signed_type (type_node) +gnat_signed_type (type_node) tree type_node; { tree type = gnat_type_for_size (TYPE_PRECISION (type_node), 0); @@ -2071,7 +2071,7 @@ signed_type (type_node) UNSIGNEDP. */ tree -signed_or_unsigned_type (unsignedp, type) +gnat_signed_or_unsigned_type (unsignedp, type) int unsignedp; tree type; { |