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

--- Comment #1 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuc...@gcc.gnu.org>:

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

commit r11-6317-gfeb3c40c8ee043cc893410c9985926439292caee
Author: Iain Buclaw <ibuc...@gdcproject.org>
Date:   Tue Dec 22 09:47:22 2020 +0100

    d: Force TYPE_MODE of classes and non-POD structs as BLKmode

    Without this being forced, the optimizer could still make decisions that
    require objects of the non-POD types to need a temporary, which would
    result in an ICE during the expand to RTL passes.

    gcc/d/ChangeLog:

            PR d/98427
            * types.cc (TypeVisitor::visit (TypeStruct *)): Set TYPE_MODE of
all
            non-trivial types as BLKmode.
            (TypeVisitor::visit (TypeClass *)): Likewise.

    gcc/testsuite/ChangeLog:

            PR d/98427
            * gdc.dg/pr98427.d: New test.

Reply via email to