Я хочу избавиться от всех предупреждений объявления неявных функций в моей кодовой базе.Но есть проблема, потому что некоторые функции запрограммированы в ПЗУ микроконтроллера на заводе-изготовителе и при связывании сценария компоновщика предоставляет только адрес функции.Эти функции вызываются кодом в SDK.
Во время компиляции gcc, конечно, выдает предупреждение implicit-function-declaration
.Как мне избавиться от этого предупреждения?
Чтобы было ясно, я понимаю, почему предупреждение есть и что оно означает.Но в этом конкретном случае разработчики SDK гарантируют, что код будет работать с неявными правилами (т.е. неявная функция принимает только целые числа и возвращает целое число).Таким образом, это предупреждение является ложным срабатыванием.
Это только gnu-C-99, без c ++.
Идеи:
- Угадайте типы аргументов, напишитепрототип в заголовке и включить что?
- Скажите gcc, что нужно рассматривать такие функции как ложные срабатывания с некоторым атрибутом gcc?