Структура инициализации C, связанная с cpp и gcc выше 13C++

Программы на C++. Форум разработчиков
Anonymous
Структура инициализации C, связанная с cpp и gcc выше 13

Сообщение Anonymous »

У меня есть код C, предоставляющий библиотеку, содержащую

Код: Выделить всё

struct my_struct_2
{
int   a;
int [5] b;
};

struct my_struct_1
{
int          id;
void*        arg;
my_struct_2  struct2;
};

extern C void create_struct(void){
my_struct_1 t = {.id = 0, arg = NULL, struct2= {.a=0;.b={0}}}
}
эта функция вызывается внутри файла cpp:

Код: Выделить всё

int main(int argc, char* argv[])...
При компиляции этого кода в gcc 12 все в порядке
Но при компиляции в gcc 13.3 у меня произошел сбой, и он подчеркнул именно инициализацию

Код: Выделить всё

my_struct_1 t = {.id = 0, arg = NULL, struct2= {.a=0;.b={0}}}
Кто-нибудь может сказать мне, почему?
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/793 ... er-than-13

Вернуться в «C++»