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

--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 47646
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47646&action=edit
patch I am testing

So I believe the actual issue is that the alias-set of 'bool' isn't a subset
of the alias-set of 'Optional'.  The attached fixes that (plus adds some
optimization for subset recording).  We're a bit back to repeatedly scanning
type fields here but since we're copying subsets that wasn't really ever fixed
truly.  To avoid we'd need to hack another bit into the alias_set_entry as
to whether it should behave the same as alias-set zero but do the usual
subset recording for it.

Reply via email to