https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116081
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc index a47482375c1..aa98599c1f5 100644 --- a/gcc/tree-vect-stmts.cc +++ b/gcc/tree-vect-stmts.cc @@ -14905,7 +14905,7 @@ vect_get_vector_types_for_stmt (vec_info *vinfo, stmt_vec_info stmt_info, vector size per vectorization). */ scalar_type = vect_get_smallest_scalar_type (stmt_info, TREE_TYPE (vectype)); - if (scalar_type != TREE_TYPE (vectype)) + if (!types_compatible_p (scalar_type, TREE_TYPE (vectype))) { if (dump_enabled_p ()) dump_printf_loc (MSG_NOTE, vect_location, but I don't see how it should make a difference in the end - the dump difference quoted might not be the actual issue.