使用具有noreturn属性的函数?
以下代码在最后一行给出警告。
extern void main_loop(void) __attribute__ ((noreturn));
int my_event_loop(void)
{
main_loop();
return MY_SUCCESS_ENUM; /* <- '-Wunreachable-code-return' */
}
请注意,需要返回值,因此该函数适合接口,可以分配给回调。
noreturn
属性的编译器带来问题。#pragma GCC diagnostic push/pop
会有效,但非常详细。有没有更好的办法在最后一次回归时安静警告?