__attribute__

__attribute__はGCC拡張機能であり、変数や型、関数に属性(アトリビュート)を付加することができる。

@interface TestObject {
}
- (id) init;
- (id) init2 __attribute__((designated_initializer));
- (id) init3;
@end

この属性だが、知ることができる(取得することができる)のはやはりコンパイラだけなのだろうか。
いや、Objective-Cでランタイムのアノテーションを作ることは可能かどうかがちょっと気になっただけなのだが。