https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86669

--- Comment #4 from Iain Sandoe <iains at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #3)
> Created attachment 45105 [details]
> gcc9-pr86669.patch
> 
> Indeed, it does.  clone_body has code to unshare DECL_INITIAL, but it does
> so only for FOR_EACH_LOCAL_DECL decls, the artificial temporary for
> std::initializer_list in this case isn't tracked among those.
> 
> The following patch fixes it at least when looking at the testcase using a
> cross-compiler, but I have no way to 1) test it on darwin 2) check whether
> the testcase in the patch actually fails at runtime without the patch and is
> fixed with it.
> I'll bootstrap/regtest the patch on x86_64-linux and i686-linux, can
> somebody please do the 1) and 2)?  Thanks.

thanks for the patch, I will do 1 and 2

Reply via email to