aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2003-08-20 22:36:08 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2003-08-20 22:36:08 +0000
commitb6343a3395b83445977a58f32c462ed0d8101734 (patch)
tree93897751320557473a490b2ff65a77d14a24b6a9 /gcc/c-common.c
parentca26ffe06013c533674a06c8d9601326b02611bf (diff)
downloadgcc-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.c11
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