C++ PATCH for c++/89119 - ICE with value-initialization in template

Jason Merrill jason@redhat.com
Wed Jan 30 18:49:00 GMT 2019


On 1/30/19 12:43 PM, Marek Polacek wrote:
> While looking at the other PR I came across this ICE.  We're substituting
> 
>    {.a={[0 ... 3]=0}}
> 
> which contains a RANGE_EXPR that build_value_init_noctor created, but none
> of the tsubst_* functions handle it.  As discussed in the PR, a RANGE_EXPR
> will always be created with constant operands, so there's no need to recurse
> further.
> 
> Bootstrapped/regtest running on x86_64-linux, ok for trunk and 8/7?
> 
> 2019-01-30  Marek Polacek  <polacek@redhat.com>
> 
> 	PR c++/89119 - ICE with value-initialization in template.
> 	* pt.c (tsubst_copy_and_build): Handle RANGE_EXPR.

OK.

Jason



More information about the Gcc-patches mailing list