1

C コードの特定の行で lint 警告を抑制できるようにする必要があり、これをインライン ディレクティブで実行したいと考えています。これは、私が 64 ビットに移植するレガシー コードの非常に大きな本体のためのものであり、lint を実行する Makefile ではなくコードにディレクティブを配置したいと考えています。後者は非常にわかりにくいからです。

問題は、Solaris lint のドキュメントが、(私が知る限り) いくつかの警告タイプに対してのみこれを行う方法を指定していることです。

以前は、次の形式が使用されていました。Solaris のドキュメントでは、これが引き続き許可されていることが示されていますが、機能していないようです。問題を複雑にしているのは、Solaris lint がエラー番号を表示せず、代わりに E_CAST_INT_TO_SMALL_INT などの識別子を使用することです。

これは古い方法です (そして、コードには既に多くの方法があります):

/*line -e511*/
4

1 に答える 1

3

このリンクのリント ディレクティブ セクションで説明

コードの 1 行に対して lint 警告を抑制するインラインの方法は 2 つあります。古い方法と推奨される新しい方法です。

古い方法は、LINTED コメントを使用することです。/*LINTED*/

新しい方法は、lint マクロを使用することです。NOTE(LINTED (msg))

新しい方法では、note.hも含める必要があります。

于 2015-07-22T19:48:53.570 に答える