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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <ga...@gcc.gnu.org>:

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

commit r14-140-ga7e1ee39e4fa37d005929c4ff9457d1a199559c6
Author: Gaius Mulley <gaiusm...@gmail.com>
Date:   Fri Apr 21 13:19:54 2023 +0100

    PR modula2/109586 cc1gm2 ICE when compiling large source files.

    The function m2block_RememberConstant calls m2tree_IsAConstant.
    However IsAConstant does not recognise TREE_CODE(t) ==
    CONSTRUCTOR as a constant.  Without this patch CONSTRUCTOR
    contants are garbage collected (and not preserved) resulting in
    a corrupt tree and crash.

    gcc/m2/ChangeLog:

            PR modula2/109586
            * gm2-gcc/m2tree.cc (m2tree_IsAConstant): Add (TREE_CODE
            (t) == CONSTRUCTOR) to expression.

    Signed-off-by: Gaius Mulley <gaiusm...@gmail.com>

Reply via email to