使用 typedef 函数指针时,类型 'interrupt' 属性仅适用于函数 [-Wattributes]
Type 'interrupt' attribute only applies to functions [-Wattributes] when using typedef function pointer
我有下面一行代码:
typedef void(* foo)(void) __attribute__ ((interrupt));
当使用 LPCXpresso 编译项目时,我收到编译器警告:
Type 'interrupt' attribute only applies to functions [-Wattributes]
谁能告诉我如何修复此警告?
GCC 对谁的属性有点挑剔。只需将它显式应用于函数类型,而不是应用于 typedef 声明本身:
typedef void(* __attribute__ ((interrupt)) foo)(void);
我刚刚在 ARM 编译器上测试了这个。
我有下面一行代码:
typedef void(* foo)(void) __attribute__ ((interrupt));
当使用 LPCXpresso 编译项目时,我收到编译器警告:
Type 'interrupt' attribute only applies to functions [-Wattributes]
谁能告诉我如何修复此警告?
GCC 对谁的属性有点挑剔。只需将它显式应用于函数类型,而不是应用于 typedef 声明本身:
typedef void(* __attribute__ ((interrupt)) foo)(void);
我刚刚在 ARM 编译器上测试了这个。