e5786.c

sizeof(構造体ポインタ型)は変

/* 警告:   A:e5786: sizeof(xxxポインタ)はポインタのサイズか返るだけなので、sizeof(*ptr)等としたかった可能性があります  */

修正前 typedef struct S { int x; int y; } S; void init_s(S *p) { memset(p, 0, sizeof(p)); } 修正後 void init_s(S *p) { memset(p, 0, sizeof(*p)); }
解説 sizeofの引数に構造体やクラスのポインタ型を渡しても、ポインタのサイズである4(32bit環境)や8(64bit環境)が 返るだけなのでsizeof(*ポインタ)としてポインタが指す実体のサイズを求めたかった可能性があります。