diff options
author | Mark Mitchell <mark@codesourcery.com> | 2003-08-20 22:36:08 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2003-08-20 22:36:08 +0000 |
commit | b6343a3395b83445977a58f32c462ed0d8101734 (patch) | |
tree | 93897751320557473a490b2ff65a77d14a24b6a9 /gcc/c-common.c | |
parent | ca26ffe06013c533674a06c8d9601326b02611bf (diff) | |
download | gcc-b6343a3395b83445977a58f32c462ed0d8101734.zip gcc-b6343a3395b83445977a58f32c462ed0d8101734.tar.gz gcc-b6343a3395b83445977a58f32c462ed0d8101734.tar.bz2 |
re PR middle-end/11996 (Compiling libjava ICE's.)
PR java/11996
Revert this change:
2003-08-19 Mark Mitchell <mark@codesourcery.com>
* c-common.c (c_common_signed_or_unsigned_type): Correctly handle
types with precisions other than those given by native machine
modes.
From-SVN: r70625
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r-- | gcc/c-common.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c index 8f9e0bfb..3089e5d 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -1969,8 +1969,6 @@ c_common_signed_type (tree type) tree c_common_signed_or_unsigned_type (int unsignedp, tree type) { - tree new_type; - if (! INTEGRAL_TYPE_P (type) || TREE_UNSIGNED (type) == unsignedp) return type; @@ -2003,14 +2001,7 @@ c_common_signed_or_unsigned_type (int unsignedp, tree type) if (TYPE_PRECISION (type) == TYPE_PRECISION (intQI_type_node)) return unsignedp ? unsigned_intQI_type_node : intQI_type_node; - new_type = (unsignedp - ? make_unsigned_type (TYPE_PRECISION (type)) - : make_signed_type (TYPE_PRECISION (type))); - TYPE_SIZE (new_type) = TYPE_SIZE (type); - TYPE_SIZE_UNIT (new_type) = TYPE_SIZE_UNIT (type); - TYPE_MODE (new_type) = TYPE_MODE (type); - - return new_type; + return type; } /* Return the minimum number of bits needed to represent VALUE in a |