fold-const.c (fold_convertible_p): Correct the logic to follow that in fold_convert().
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>
Fri, 29 Feb 2008 22:01:22 +0000 (23:01 +0100)
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Fri, 29 Feb 2008 22:01:22 +0000 (22:01 +0000)
* fold-const.c (fold_convertible_p): Correct the logic to follow
that in fold_convert().

From-SVN: r132780

gcc/ChangeLog
gcc/fold-const.c

index 32be0ddd1e98600061b57d77e6fc51606d4b89b3..e6f51daf6126ace7d272f972394c65e5eea80aff 100644 (file)
@@ -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
index 987acf1649cf5638d2f1d89ade53c99ca37a57a2..5af6f0d686af2dcc0b701c44cd54957c077a9efa 100644 (file)
@@ -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;
     }
 }