__attribute__((const))
是用于检查函数执行纯度的 GCC 属性。我认为 Clang 支持这一点,但是当我把它放到一个方法中时,它似乎不起作用。
@interface C1
- (id)method1 __attribute__((const));
@end
int a = 0;
@implementation C1
- (id)method1 __attribute__((const))
{
a++;
return nil;
}
@end
上面的代码不会产生任何警告或错误。
这个归因是否适用于 Clang?或者我应该怎么做才能使它起作用?