Re: [C++ Patch] PR 58664

2014-05-20 Thread Paolo Carlini
Hi, On 05/20/2014 04:50 AM, Jason Merrill wrote: On 05/19/2014 06:43 PM, Paolo Carlini wrote: if (unqualified_id) - error (field %qD has incomplete type %qT, - unqualified_id, type); + cxx_incomplete_type_error (unqualified_id, type); else

Re: [C++ Patch] PR 58664

2014-05-20 Thread Jason Merrill
OK. Jason

[C++ Patch] PR 58664

2014-05-19 Thread Paolo Carlini
Hi, first blush, this is just an ICE on invalid for a quite special case. However, comparing the union case to the struct case (on which we don't ICE): struct S { S s[1] = { 0 }; }; xxx.C:3:16: error: could not convert ‘0’ from ‘int’ to ‘S’ S s[1] = { 0 }; shows that in this area there is

Re: [C++ Patch] PR 58664

2014-05-19 Thread Paolo Carlini
... in fact, I need to be more careful when comparing the types, also because of cv-qualifiers, eg, for: struct S { const S s[1] = { 0 }; }; the trees for S and const S are definitely different. Done in the attached. Thanks, Paolo. /// /cp 2014-05-20 Paolo Carlini

Re: [C++ Patch] PR 58664

2014-05-19 Thread Jason Merrill
On 05/19/2014 06:43 PM, Paolo Carlini wrote: if (unqualified_id) - error (field %qD has incomplete type %qT, -unqualified_id, type); + cxx_incomplete_type_error (unqualified_id, type); else error (name %qT has