https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97360
--- Comment #28 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Andrew Macleod from comment #25) > Wonder if it was suppose to be something like: > > > /* Vector pair and vector quad support. */ > if (TARGET_EXTRA_BUILTINS) > { > - tree oi_uns_type = make_unsigned_type (256); > - vector_pair_type_node = build_distinct_type_copy (oi_uns_type); > + vector_pair_type_node = make_unsigned_type (256); > SET_TYPE_MODE (vector_pair_type_node, POImode); > layout_type (vector_pair_type_node); > lang_hooks.types.register_builtin_type (vector_pair_type_node, > "__vector_pair"); > > - tree xi_uns_type = make_unsigned_type (512); > - vector_quad_type_node = build_distinct_type_copy (xi_uns_type); > + vector_quad_type_node = make_unsigned_type (512); > SET_TYPE_MODE (vector_quad_type_node, PXImode); > layout_type (vector_quad_type_node); > lang_hooks.types.register_builtin_type (vector_quad_type_node, So this passed bootstrap and regtesting with no regressions. Is this really the correct fix? Don't we want a distinct type compared to the unsigned type returned from make_unsigned_type()?