On Fri, May 18, 2018 at 11:52 PM Eric Botcazou <ebotca...@adacore.com>
wrote:

> > +             /* If the next declaration is a PARM_DECL pointing to
theDECL,
> > +                we need to adjust its VALUE_EXPR directly, since
chains of
> > +                VALUE_EXPRs run afoul of garbage collection.  This
occurs
> > +                in Ada for Out parameters that aren't copied in.  */
> > +             if (next
> > +                 && TREE_CODE (next) == PARM_DECL
> > +                 && DECL_HAS_VALUE_EXPR_P (next)
> > +                 && DECL_VALUE_EXPR (next) == decl)
> > +               SET_DECL_VALUE_EXPR (next, x);
> >
> > maybe you can explain the GC issue a bit.

> It's the issue with GCed tables pointing to each other (which one is
marked
> first?) applied to the VALUE_EXPR table.  Not clear it's worth verifying
since
> it's marginal, but I guess it's cheap enough to do in
decl_value_expr_insert.

Yeah, I guess it's cheap enough and we might have this issue lurking
somewhere...

Richard.

> --
> Eric Botcazou

Reply via email to