Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: IAR MSP 510 и extern union
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
Dog Pawlowa
Понадобилось подправить старую версию проекта трехлетней давности.
Не компилируется: 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.

Можно критиковать подходы программирования, так уже не пишу, но зак просит подправить проект, может кто подскажет, как можно сделать это малой кровью.
Спасибо.
Сергей Борщ
Цитата(Dog Pawlowa @ Oct 6 2010, 22:00) *
как можно сделать это малой кровью.
Попробуйте убрать из заголовочного файла __no_init - он по логике относится к определению, не к объявлению.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.