https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106560
--- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Richard Biener from comment #6) > (In reply to Andrew Pinski from comment #3) > > Here is the simple fix, I will submit it this weekend. > > [apinski@xeond2 gcc]$ git diff > > diff --git a/gcc/gimplify.cc b/gcc/gimplify.cc > > index f0fbdb48012..d9ada8e0f9e 100644 > > --- a/gcc/gimplify.cc > > +++ b/gcc/gimplify.cc > > @@ -6012,6 +6012,11 @@ gimplify_modify_expr (tree *expr_p, gimple_seq > > *pre_p, gimple_seq *post_p, > > gcc_assert (TREE_CODE (*expr_p) == MODIFY_EXPR > > || TREE_CODE (*expr_p) == INIT_EXPR); > > > > + if (TREE_TYPE (*from_p) == error_mark_node) > > if (error_operand_p (*from_p)) Oh Ok, There was a few places which check directly against error_mark_node. gimplify_decl_expr and gimplify_save_expr for example. I will submit a patch to fix those too.