ログ機能があります:
#define LOGERROR(err) if(err) { \
LOGTRACE(@"[NSError] %s (%d): (%d:%@) Reason: %@", \
__PRETTY_FUNCTION__, \
__LINE__, \
err.code, \
err.domain, \
err.localizedDescription) \
}
で呼び出すと
LOGERROR(playerItem.error);
「NSInteger をフォーマット引数として使用しないでください。明示的なキャストを long に追加してください」という警告が表示されます。
Xcode の autofix は LOGERROR の前に %ld を挿入しますが、これは間違っています。
この警告は、 https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html__LINE__
によるとint を返すの使用によるものだと思います。
この呼び出しから警告を削除するにはどうすればよいですか?