aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@gcc.gnu.org>2004-08-05 09:03:42 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2004-08-05 09:03:42 +0000
commitca7a3bd7d5c371af20775d28ec20bf57115b20e5 (patch)
tree267e3abff19f5eff30100b2ff7fa407469a91070 /gcc/tree.c
parentd36837f4cac8268ddb67fcf4f8ecfe323d79d92b (diff)
downloadgcc-ca7a3bd7d5c371af20775d28ec20bf57115b20e5.zip
gcc-ca7a3bd7d5c371af20775d28ec20bf57115b20e5.tar.gz
gcc-ca7a3bd7d5c371af20775d28ec20bf57115b20e5.tar.bz2
tree.h (force_fit_type): Return a tree, take three flags.
* tree.h (force_fit_type): Return a tree, take three flags. * fold-const.c (force_fit_type): Set TREE_OVERFLOW and TREE_CONSTANT_OVERFLOW here. (int_const_binop, const_binop): Adjust. (size_int_type): Do sign extension here. (fold_convert_const, optimize_bit_field_compare, decode_field_reference, all_ones_mask_p, fold_div_compare, fold, fold_negate_const, fold_abs_const, fold_not_const): Adjust. * tree.c (size_in_bytes, int_fits_type_p): Adjust. * cp/cvt.c (cp_convert_to_pointer): Adjust force_fit_type call. * java/jcf-parse.c (get_constant): Adjust force_fit_type call. * java/lex.h (SET_LVAL_NODE_TYPE): Remove. * java/lex.c (java_perform_atof): Use SET_LVAL_NODE directly. (do_java_lex): Likewise. Adjust force_fit_type call. From-SVN: r85599
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 30fcb55..ef73afd 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -1130,7 +1130,7 @@ size_in_bytes (tree type)
}
if (TREE_CODE (t) == INTEGER_CST)
- force_fit_type (t, 0);
+ t = force_fit_type (t, 0, false, false);
return t;
}
@@ -4563,7 +4563,8 @@ int_fits_type_p (tree c, tree type)
{
c = copy_node (c);
TREE_TYPE (c) = type;
- return !force_fit_type (c, 0);
+ c = force_fit_type (c, -1, false, false);
+ return !TREE_OVERFLOW (c);
}
}