PORTING.STRUCT.BOOL
構造またはクラスにはブール メンバーが含まれています
PORTING チェッカーは、異なるコンパイラ内で特定の実装詳細に依存する可能性があるコードを識別します。PORTING.STRUCT.BOOL チェッカーは、構造またはクラスがブールデータ型を持っている状況を検出します。
脆弱性とリスク
このチェッカーは、データ構造に 'bool' データ型が含まれる状況を警告します。これは、コンパイラによってバイト、単語やその他の積分レイアウトとしてデータ型を表現できるため、データ構造のメモリのレイアウト全体は、コンパイラの変更時に大幅にオフセットされる可能性があります。
軽減と防止
データメンバーの幅を正確に制御できるよう、抽象的データ型を使用して値を表現することが、この問題の最適な処理方法です。他には、新しいプラットフォーム上でコンパイラ指令またはコマンドラインスイッチを使用する方法もあります。