Автоматический синтез переменных экземпляра (ivars) является функцией среды выполнения Objective-C 2.0 в OS X и новой среды выполнения iOS Objective-C.Директива @synthesize автоматически создаст необходимый ivar во время выполнения, если вы сами не объявили его.Это стало возможным благодаря не хрупкой поддержке ivar Objective-C 2.0.Таким образом, ошибок нет, и вы не должны их получать.
В конечном счете, хорошо, что вам не нужно объявлять ivars в интерфейсе класса.Они (вероятно) специфичные для реализации детали, которые вы не хотите видеть как часть открытого интерфейса класса.Обратите внимание, что используя категории классов, вы также можете автоматически синтезировать ivars для «приватных» свойств.