https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89224

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |pinskia at gcc dot 
gnu.org

--- Comment #13 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Ok, I have a simple fix:
```
diff --git a/gcc/c-family/c-common.cc b/gcc/c-family/c-common.cc
index e15eff698df..9d0e1ae574d 100644
--- a/gcc/c-family/c-common.cc
+++ b/gcc/c-family/c-common.cc
@@ -8949,9 +8949,10 @@ convert_vector_to_array_for_subscript (location_t loc,
          to not run into the gimplifiers premature setting of
DECL_GIMPLE_REG_P
         for function parameters.  */
       c_common_mark_addressable_vec (*vecp);
+      tree newinnertype = build_qualified_type (TREE_TYPE (type), TYPE_QUALS
(type));

       *vecp = build1 (VIEW_CONVERT_EXPR,
-                     build_array_type_nelts (TREE_TYPE (type),
+                     build_array_type_nelts (newinnertype,
                                              TYPE_VECTOR_SUBPARTS (type)),
                      *vecp);
     }
```

Reply via email to