Если вы используете типичный компилятор, можно столкнуться с этой проблемой. Для получения дополнительной информации смотрите Compiler (-compiler)
.
Анализ останавливает с сообщением об ошибке, связанным с non-ANSI® C ключевое слово, например, data
, или приписывает, такие как __attribute__((weak))
.
В зависимости от местоположения ключевого слова может отличаться сообщение об ошибке. Например, эта строка вызывает сообщение об ошибке: expected a ";"
.
data int tab[10];
Типичный компилятор Polyspace® поддерживает только ANSI C ключевые слова. Если вы используете расширение языка, типичный компилятор не распознает его и обрабатывает ключевое слово как регулярный идентификатор.
Задайте свой компилятор при помощи опции Compiler (-compiler)
.
Если ваш компилятор непосредственно не поддержан или не основан на поддерживаемом компиляторе, можно использовать типичный компилятор. Работать вокруг ошибок компиляции:
Если ключевое слово связано с моделированием памяти, удалите его из предварительно обработанного кода. Например, чтобы удалить ключевое слово data
, введите data=
для опции Preprocessor definitions (-D)
.
Если ключевое слово связано с атрибутом, удалите атрибуты из предварительно обработанного кода. Введите __attribute__(x)=
для опции Preprocessor definitions (-D)
.
Если ваш код имеет эту строку:
void __attribute__ ((weak)) func(void);
void func(void);
Когда вы используете эти обходные решения, ваш исходный код не изменен.