[C++ PATCH] Fix PR58705

Jason Merrill jason@redhat.com
Thu Oct 24 13:20:00 GMT 2013


On 10/14/2013 08:23 AM, Marek Polacek wrote:
> We were ICEing on the attached testcase, because in check_narrowing,
> for = {{}}, we wanted to check recursively the CONSTRUCTOR_ELTs,
> even though init in this case has 0 CONSTRUCTOR_NELTS.  So I added
> the check for CONSTRUCTOR_NELTS > 0.  Moreover, since empty scalar
> initializers are forbidden in C FE, I think we should error out here
> too.  (Complex type is considered as an arithmetic type as a GNU
> extension and arithmetic types are scalar types.)

Empty scalar initializers are allowed in C++11, so we shouldn't give an 
error.  Your initial patch from bugzilla is OK, with an appropriately 
adjusted testcase.

Jason



More information about the Gcc-patches mailing list