В среде ARC у меня есть следующий код:
NSInvocation* invocation = [NSInvocation invocationWithMethodSignature:signature];
[invocation setTarget:delegate];
[invocation setSelector:@selector(restClient:loadedFile:contentType:eTag:)];
// Error Here!
[invocation setArgument:&self atIndex:2];
[invocation setArgument:&filename atIndex:3];
[invocation setArgument:&contentType atIndex:4];
[invocation setArgument:&eTag atIndex:5];
Установка аргумента для индекса 2 (&self
) вызывает следующую ошибку компилятора:
Отправка* const __strong * к параметру типа void * изменения сохраняют / освобождают свойства
Я понятия не имею, как это исправить, сохраняя действительный код.На данный момент я просто придерживаюсь NULL
и оборачиваю оператор invoke в блок try / catch, но это далеко не идеальное решение.
Подобная проблема, если кто-то будет любезен решить ее также:
С этой строкой кода (из библиотеки MPOAuth)
status = SecItemCopyMatching((__bridge CFDictionaryRef)searchDictionary, (CFTypeRef *)&attributesDictionary);
Я получаю следующую ошибку
Приведение косвенного указателя на указатель Objective C на 'CFTypeRef ' (он же const void * ') запрещено ARC