본문 바로가기
프로그래밍/Xcode-iOS

Conflicting nullability specifier on parameter types, 'nonnull' conflicts with existing specifier 'nullable'

by Mr-후 2019. 9. 4.
반응형

Conflicting nullability specifier on parameter types, 'nonnull' conflicts with existing specifier 'nullable'




어떻게 보면 기본적인 지식이 없어서 구글링을 한 것이지만 시간이 없다는 핑계로 항상 되는 소스만 찾아다니는 하이에나 개발자가 된지 오래. 

이번에 앱을 리뉴얼하면서 Objective-C vs Swift냐를 고민하다 정신건강에 이로울 것 같은  Objective-C 를 선택했다. 

나중에 시간이 된다면? 이 소스를 기반으로 Swift로 옮겨가볼까 한다. 


이번에 새로운 프로젝트를 만들고 네트워크 컨트롤러를 만들다가 경고가 떠는 것을 보고 버벅대다 상속 받은 클래스의 비슷한 인자를 받는 함수를 보고 따라 수정했더니 이상 없이 된다. 

문제가 된 부분은 

AFHTTPSessionManager를 상속 받은 NetAPIClient 클래스의 메서드 정의에서 나왔다. 

- (NSURLSessionDataTask *)GET:(NSString *)URLString

                   parameters:(id)parameters

                      success:(void (^)(NSURLSessionDataTask *task, _Nullable id responseObject))success

                      failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure;



경고Conflicting nullability specifier on parameter types, 'nonnull' conflicts with existing specifier 'nullable' 


null 허용 여부에 대한 이야기인데 

- (NSURLSessionDataTask *)GET:(NSString *)URLString

                   parameters:(nullable id)parameters

                      success:(nullable void (^)(NSURLSessionDataTask *task, _Nullable id responseObject))success

                      failure:(nullable void (^)(NSURLSessionDataTask *task, NSError *error))failure;

nullable을 넣어주었더니 경고가 사라졌다. 

야호 !! 

ㅋㅋㅋㅋㅋ 너무 유치한 포스팅인가? ㅋㅋ 



반응형