Понадобилось подправить старую версию проекта трехлетней давности.
Не компилируется: Error[Pe101]: "bContrast" has already been declared in the current scope (at line 706 of "...k_backup.h") ...k_backup.c 58
bContrast - это элемент SETUP_STRUCT, ошибка выводится на все элементы.
Header:
extern
__no_init union
{ SETUP_STRUCT ;
unsigned char setup_char[SetupSize];
unsigned int setup_int[SetupSize/2];
}
;
В С-шном файле то же самое, но без extern.
То есть, старый компилятор относил extern ко всем элементам объединения, а новый не хочет, и считает декларацией составную часть extern union.
Можно критиковать подходы программирования, так уже не пишу, но зак просит подправить проект, может кто подскажет, как можно сделать это малой кровью.
Спасибо.