aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fold-const.c9
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 32be0dd..e6f51da 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2008-02-29 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * fold-const.c (fold_convertible_p): Correct the logic to follow
+ that in fold_convert().
+
2008-02-29 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35315
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 987acf1..5af6f0d 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -2475,8 +2475,15 @@ fold_convertible_p (const_tree type, const_tree arg)
return (TREE_CODE (orig) == VECTOR_TYPE
&& tree_int_cst_equal (TYPE_SIZE (type), TYPE_SIZE (orig)));
- default:
+ case REAL_TYPE:
+ case FIXED_POINT_TYPE:
+ case COMPLEX_TYPE:
+ case VECTOR_TYPE:
+ case VOID_TYPE:
return TREE_CODE (type) == TREE_CODE (orig);
+
+ default:
+ return false;
}
}