我正在使用 MPLABX(Microchip 产品的 IDE)和 XC16 编译器(基于 GCC)用 C 编写嵌入式代码。
我正在使用 -Wmissing-prototypes
来确保我拥有所有函数的原型(prototype)。我的问题是我有很多中断服务程序,这导致编译器也提示缺少这些程序的原型(prototype)。
因为用户软件从不直接调用 ISR 函数,所以我不想在我的代码中的任何地方放置它们的原型(prototype)。
有什么方法可以显示缺少原型(prototype)的警告,除了中断服务例程(即标记有__attribute__((interrupt,auto_psv))
的函数)?
最佳答案
我听从了 Carl Norum 的建议,只是在函数定义的正上方添加了函数原型(prototype)。
举个例子:
void __attribute__((interrupt,auto_psv)) _SPI2ErrInterrupt(void);
void _SPI2ErrInterrupt(void)
{
// Do ISR stuff...
}
关于c - 当使用 -Wmissing-prototypes 时,如何抑制 GCC 对中断例程没有原型(prototype)的警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16086863/