re PR debug/66691 (ICE on valid code at -O3 with -g enabled in simplify_subreg, at...
[gcc.git] / gcc / convert.c
index 142e82a3c8f484888708d4ca527bb08bf13d9c92..c3cb0ae29aaa8e64a7f1c42d4f837fe90d1a8ec6 100644 (file)
@@ -25,17 +25,8 @@ along with GCC; see the file COPYING3.  If not see
 #include "system.h"
 #include "coretypes.h"
 #include "tm.h"
-#include "hash-set.h"
-#include "machmode.h"
-#include "vec.h"
-#include "double-int.h"
-#include "input.h"
 #include "alias.h"
 #include "symtab.h"
-#include "wide-int.h"
-#include "inchash.h"
-#include "real.h"
-#include "fixed-value.h"
 #include "tree.h"
 #include "fold-const.h"
 #include "stor-layout.h"
@@ -920,7 +911,9 @@ convert_to_integer (tree type, tree expr)
     case VECTOR_TYPE:
       if (!tree_int_cst_equal (TYPE_SIZE (type), TYPE_SIZE (TREE_TYPE (expr))))
        {
-         error ("can%'t convert between vector values of different size");
+         error ("can%'t convert a vector of type %qT"
+                " to type %qT which has different size",
+                TREE_TYPE (expr), type);
          return error_mark_node;
        }
       return build1 (VIEW_CONVERT_EXPR, type, expr);
@@ -1004,7 +997,9 @@ convert_to_vector (tree type, tree expr)
     case VECTOR_TYPE:
       if (!tree_int_cst_equal (TYPE_SIZE (type), TYPE_SIZE (TREE_TYPE (expr))))
        {
-         error ("can%'t convert between vector values of different size");
+         error ("can%'t convert a value of type %qT"
+                " to vector type %qT which has different size",
+                TREE_TYPE (expr), type);
          return error_mark_node;
        }
       return build1 (VIEW_CONVERT_EXPR, type, expr);