Подтвердить что ты не робот

Xcode 8: "objc_unretainedPointer" недоступен вместо использования __bridge

Просто обновил мой проект до Xcode 8, и я нахожу эти ошибки в нескольких внешних фреймворках, которые включает мое приложение. Есть ли обходной путь, возможно, касание настроек, чтобы избежать ошибок компиляции?

Это пример ошибки: (Это я не могу изменить, потому что это импортированная инфраструктура)

const void * ivarPtr = objc_unretainedPointer(self) + ivar_getOffset(ivar);
[decoder decodeValueOfObjCType:[ivarInfo[@"encoding"] UTF8String] at:(void *)ivarPtr];
4b9b3361

Ответ 1

Для Xcode 8 это должно быть:

const void * ivarPtr = (__bridge void *)(self) + ivar_getOffset(ivar);

Ответ 2

Вы можете просто заменить objc_unretainedPointer(self) на (__bridge void *) (self)