https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121661
--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #8) > Looks like val is being replaced with FRAME.0.val which is incorrect. Yes I > think there is a DECL_EXPR_DECL on val DECL. though it is NOT correct at > this point. I think the problem is more related to use of > force_gimple_operand_gsi here. Which is not needed for a simple DECL. > extract_component can create the gimple assignment itself. > > This code dates long time ago which is why it is most likely using > force_gimple_operand_gsi here. What I forgot to say is force_gimple_operand_gsi looks through DECL_EXPR_DECL and ues that expression to for the decl and that is where things go side ways. I can get to this over the weekend I think but someone fixing it before hand would be nice.