私はアップルのUnified Loggingを初めて使用していて、ある程度の成功を収めました。しかし、私はそれを提案された%{timeval}.*P
カスタムフォーマット指定子で動作させることはできません。os_log timeval形式のClangエラー
私の最初の試みのようなものだった:
struct timeval some_time;
// ... populate `some_time`
os_log_info(OS_LOG_DEFAULT, "a thing happened at %{timeval}.*P", some_time);
しかし、打ち鳴らすには、エラーを報告:field precision should have type 'int', but argument has type 'struct timeval'
。
私は、clangがos_log
の書式設定ルールを理解していないと思っています。もし私がclangを持っている方法を理解できれば、clang diagnostic push
などでエラーを抑えることができます。基本的なマクロOS_LOG_CALL_WITH_FORMAT
が運を使わずにそれをしようとしているようです。
timeval
フォーマット指定子を誤って使用していますか?
これはXcode 8.3.1で、以前のバージョンのXcodeは試していません。