При компиляции чего-то простого, как
inline int test() { return 3; }
int main()
{
test();
return 0;
}
с gcc -c test.c
, все идет хорошо. Если добавлено ключевое слово -ansi
, gcc -ansi -c test.c
, появляется сообщение об ошибке
test.c:1:8: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘int’
Это верно, даже если выбран стандарт C99, gcc -std=c99 -ansi -c test.c
.
В чем причина этого, и есть ли рекомендуемое исправление?