CWARN.PACKED.TYPEDEF
属性 'packed' は typedef で無視されます
CWARN.PACKED.TYPEDEF チェッカーは、gcc 'packed' 属性が typedef 宣言に適用されているインスタンスを検出します。'packed' 属性は、typedef に struct 定義が含まれている場合に使用できます。
脆弱コード例
コピー
typedef struct test{
int a;
char b;
int c;
} __attribute__((__packed__)) testing;
/* ...*/
typedef struct s __attribute__((packed)) s_packed;
/* ...*/
Klocwork は、'packed' 属性が typedef 宣言で使用される 7 行目にフラグを立てます。5 行目の 'packed' 属性は、struct 定義の一部であるため、フラグが立てられません。