Post Go back to editing

Designated Initializers don't work in C++11 mode

Designated Initializers works in C and C++ mode, but it don't work in C++11 mode.

Why?

"An_absolute_file_path\file_name.cpp", line 149: cc0040: error: expected an identifier

[0 + 0] { (u32)(&zero0), 0x00000000 }, // 000: zero signal

 ^

"An_absolute_file_path\file_name.cpp", line 149: cc0065: error: expected a ";"

[0 + 0] { (u32)(&zero0), 0x00000000 }, // 000: zero signal

                                                          ^

Parents
  • Hi,

    You can see the below information in the help path we shared:

    This is a standard feature of the ISO/IEC 9899:1999 C standard. The compiler supports it as an extension in C89 and C++ modes, except for initializing arrays in C++11 mode.

    CrossCoreRegistered Embedded Studio 2.5.0 > BlackfinRegistered Development Tools Documentation > C/C++ Compiler and Library Manual for BlackfinRegistered Processors > Compiler > C/C++ Compiler Language Extensions > Designated Initializers

    Let us know the processor you are working with. Also can you please share a sample project which replicates this issue?

     

    Regards,

    Kader

Reply
  • Hi,

    You can see the below information in the help path we shared:

    This is a standard feature of the ISO/IEC 9899:1999 C standard. The compiler supports it as an extension in C89 and C++ modes, except for initializing arrays in C++11 mode.

    CrossCoreRegistered Embedded Studio 2.5.0 > BlackfinRegistered Development Tools Documentation > C/C++ Compiler and Library Manual for BlackfinRegistered Processors > Compiler > C/C++ Compiler Language Extensions > Designated Initializers

    Let us know the processor you are working with. Also can you please share a sample project which replicates this issue?

     

    Regards,

    Kader

Children
No Data