Is it a valid C++ structure initialization?

Christopher Faylor cgf@redhat.com
Wed Nov 27 15:57:00 GMT 2002


On Mon, Nov 25, 2002 at 06:50:10PM -0500, Sergey Okhapkin wrote:
>Here is a test program (wich seems to me incorrect):
>
>struct asd {
> int a;
> char b;
>};
>
>void f(int i, char c)
>{
> struct asd qwe = {
>  a: i,
>  b: c
> };
>
>}
>
>The program compiles fine with gcc-3.2. Gcc 3.3 current snapshot reports:
>test.cc: In function `void f(int, char)':
>test.cc:11: error: too many initializers for `asd'

Yes, they are incorrect.  They are using gcc extensions which are no longer
supported in g++ apparently.  Even the C99 labelled initializers are not
supported.

So, we have to fix these.

cgf



More information about the Cygwin-developers mailing list