ここで質問するのが適切かどうかわかりませんが、とにかく質問します。
Lint に問題があります。現在、別のプロジェクトからいくつかのコードを移行しています。現在、新しいプロジェクトで使用されていない多くの構造体メンバーがあります。そしてもちろん、このリントは次のように不平を言っています。
情報 768: グローバル構造体メンバー 'foo' (89 行目、ファイル /path/header.h) が参照されていません
現時点ではこれらのメッセージを抑制したいと思います (ビルドが壊れるため) が、移行と並行してコードが実装されており、構造体メンバーが使用されないようにしたいため、グローバルには実行したくありません。そのため、グローバル構成ファイルを使用してこれらのメンバーのメッセージを抑制するオプションが残されています (つまり、-esym(768, foo))。
しかし、私はこの問題を抱えています:
typedef struct {
u16 foo;
u16 bar;
} t_foobar;
typedef struct {
u16 foo;
u16 bar;
u16 temp;
} t_tempfoobar;
foobar::foo と foobar::bar は現在使用されていないため、t_foobar 構造体全体に対して lint 例外を作成したいと考えていますが、-esym(foo) を使用すると、t_tempfoobar::foo に対しても例外を作成します。ほしくない。-esym(768, t_foobar*) を試しましたが、うまくいきませんでした。次のようなインライン例外も実行できません。
// lint -e768
typedef struct {
u16 foo;
u16 bar;
} t_foobar;
//lint -restore
それは動作しません。これが機能する唯一の方法は、Lint の構成ファイルで -e768 を実行することです。
これを達成する方法について何か提案はありますか? メンバーごとに例外を書く必要はありませんか? これには、同じ名前の他の構造体のメンバーも除外されるという問題もあります。
助けてくれてありがとう