태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
2017.12.22 08:30


 [xcode] suppressing warning - incompatible pointer types sending …


Casting, clang, delegate, DIAGNOSTIC, ID, ignored, incompatible pointer type, POP, pragma, Push, suppressing warning, Wincompatible-pointer-types, xcode, [xcode] suppressing warning - incompatible pointer types sending …


-

Objective-C 가 delegate 를 id<DelegateName> 형태로 처리하기 때문에 워낙에 이런 warning 이 잘 발생하므로,

항상 casting 해주는 것보다 아래와 같이 부분 suppressing warning 을 해주는 것이 좋다.



-

아래와 같이 해당 warning 을 초래하는 코드 부분만 suppress warning 을 할 수 있다.

전체에 대한 warning 제거가 아니기 때문에 훨씬 안전하다.

단, warning 제거할 때에는 에러가 발생할 소지가 높은 부분이기 때문에 눈여겨 보아야 한다.



-

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wincompatible-pointer-types"


// 코드


#pragma clang diagnostic pop



-

사실 Best 는 저런 warning 이 나오지 않도록 코드를 수정하는 것이지만, 불가피하거나 수정범위가 클 경우에 적용 할법한 방법이다.


더보기



댓글을 달아 주세요


Posted by 돼지왕왕돼지