Re: RFA (tree-cfg): PATCH for 68983 (ICE in copy constructor)

2016-01-08 Thread Jason Merrill
On 01/08/2016 06:18 AM, Richard Biener wrote: On Fri, Jan 8, 2016 at 8:22 AM, Eric Botcazou wrote: But it occurs to me that since the real problem I was trying to catch is creation of temporaries of TREE_ADDRESSABLE type in the back end, we should guard that instead. So this patch moves the as

Re: RFA (tree-cfg): PATCH for 68983 (ICE in copy constructor)

2016-01-08 Thread Richard Biener
On Fri, Jan 8, 2016 at 8:22 AM, Eric Botcazou wrote: >> But it occurs to me that since the real problem I was trying to catch is >> creation of temporaries of TREE_ADDRESSABLE type in the back end, we >> should guard that instead. So this patch moves the assert into assign_temp. > > FWIW create_t

Re: RFA (tree-cfg): PATCH for 68983 (ICE in copy constructor)

2016-01-07 Thread Eric Botcazou
> But it occurs to me that since the real problem I was trying to catch is > creation of temporaries of TREE_ADDRESSABLE type in the back end, we > should guard that instead. So this patch moves the assert into assign_temp. FWIW create_tmp_var has a slightly stronger version: gcc_assert (!TREE

RFA (tree-cfg): PATCH for 68983 (ICE in copy constructor)

2016-01-07 Thread Jason Merrill
This testcase was broken by my earlier fix for 67557, which added an assert to store_field to catch inappropriate use of bitwise copying of TREE_ADDRESSABLE types. In this testcase, the copying is actually fine, since no temporary object is created. So one solution would be to recognize that