------- Comment #6 from mmitchel at gcc dot gnu dot org 2009-02-02 06:41 ------- Yes, designated initializers are of course a GNU extension to C++. I'm surprised that icc accepts them in its strict mode.
In GNU C++, it makes sense for us to accept the same extensions that are accepted in GNU C. So, if GCC accepts this, I think G++ should too. (I don't know what the initialization of "id_struct" with "0" means, though; does it only initialize the first element of id_struct::is_ip_addrs?) However, the GCC and G++ code that processes initializers is, I think, mostly if not totally distinct. So, it's likely that some significant work would need to be done to handle this case. -- Mark -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38928