On Mon, 18 Jun 2018, Jason Merrill wrote:

> On Mon, Jun 18, 2018 at 11:59 AM, Joseph Myers <jos...@codesourcery.com> 
> wrote:
> > On Mon, 18 Jun 2018, Jason Merrill wrote:
> >
> >> > +  if (TREE_CODE (rhs) == COND_EXPR)
> >> > +    {
> >> > +      /* Check the THEN path first.  */
> >> > +      tree op1 = TREE_OPERAND (rhs, 1);
> >> > +      context = check_address_of_packed_member (type, op1);
> >>
> >> This should handle the GNU extension of re-using operand 0 if operand
> >> 1 is omitted.
> >
> > Doesn't that just use a SAVE_EXPR?
> 
> Hmm, I suppose it does, but many places in the compiler seem to expect
> that it produces a COND_EXPR with TREE_OPERAND 1 as NULL_TREE.

Maybe that's used somewhere inside the C++ front end.  For C a SAVE_EXPR 
is produced directly.

-- 
Joseph S. Myers
jos...@codesourcery.com

Reply via email to