https://gcc.gnu.org/g:e7879391bb2b86606d0ce35ed97eccc108970e36

commit r11-11561-ge7879391bb2b86606d0ce35ed97eccc108970e36
Author: Richard Biener <rguent...@suse.de>
Date:   Tue Nov 28 12:36:21 2023 +0100

    middle-end/112732 - stray TYPE_ALIAS_SET in type variant
    
    The following fixes a stray TYPE_ALIAS_SET in a type variant built
    by build_opaque_vector_type which is diagnosed by type checking
    enabled with -flto.
    
            PR middle-end/112732
            * tree.c (build_opaque_vector_type): Reset TYPE_ALIAS_SET
            of the newly built type.
    
    (cherry picked from commit f26d68d5d128c86faaceeb81b1e8f22254ad53df)

Diff:
---
 gcc/tree.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gcc/tree.c b/gcc/tree.c
index 8b5b0b7508cc..2cbdc7b65ba9 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -11098,6 +11098,8 @@ build_opaque_vector_type (tree innertype, poly_int64 
nunits)
   TYPE_NEXT_VARIANT (cand) = TYPE_NEXT_VARIANT (t);
   TYPE_NEXT_VARIANT (t) = cand;
   TYPE_MAIN_VARIANT (cand) = TYPE_MAIN_VARIANT (t);
+  /* Type variants have no alias set defined.  */
+  TYPE_ALIAS_SET (cand) = -1;
   return cand;
 }

Reply via email to