Почему существует положение для включения переменной в объявление протокола, когда это когда-либо используется.
@protocol SampProtocol int i; - (void)func; @end
Нет такого положения.clang выдает ошибку, если вы пытаетесь скомпилировать этот код;gcc считает оператор int i; частью родительской области (что, вероятно, является ошибкой).
int i;