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

--- Comment #5 from Peter Bergner <bergner at gcc dot gnu.org> ---
(In reply to Kewen Lin from comment #4)
> Thanks for the comments! One patch guarding these types is attached, it can
> fix the ICE.

That won't work, because that's what we used to do! :-)   In PR96125, the test
case there is compiled with -mcpu=power8, but uses a pragma/target attribute to
compile a function with -mcpu=power10/-mmma.  The problem is that built-in and
target type initialization is only done once, so we can't tell from the
explicit options being used, whether there will be a function later that uses a
pragma/target attribute, so we have to assume there will be.

Therefore, we have to always initialize them as we do now, but somehow later
catch any illegal usage.  Ideas on how to do that welcome! :-)

Reply via email to