summaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-15 19:47:38 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-15 19:47:38 +0000
commit7aa1e6eb6003e5f91b4d6551e28a02353bfd8d5a (patch)
tree120fbe30bd6f78f832c39a961b9db7a31468a123 /gcc/c-common.c
parent37d6c60286a6bef4b867b5fea0be9f02a654333d (diff)
downloadgcc-7aa1e6eb6003e5f91b4d6551e28a02353bfd8d5a.tar.gz
* c-common.c (c_promoting_integer_type_p): Handle ?Imode types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45640 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 755e526d1b1..1515e45c34f 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -3391,7 +3391,8 @@ c_promoting_integer_type_p (t)
|| TYPE_MAIN_VARIANT (t) == signed_char_type_node
|| TYPE_MAIN_VARIANT (t) == unsigned_char_type_node
|| TYPE_MAIN_VARIANT (t) == short_integer_type_node
- || TYPE_MAIN_VARIANT (t) == short_unsigned_type_node);
+ || TYPE_MAIN_VARIANT (t) == short_unsigned_type_node
+ || TYPE_PRECISION (t) < TYPE_PRECISION (integer_type_node));
case ENUMERAL_TYPE:
/* ??? Technically all enumerations not larger than an int