e27.c

未使用変数を消せ!!


struct tag { char buf[0x1000] ; } ;

修正前

static void No(void) { int i ; struct tag useBigstruct ;

スタック浪費 0x1000byte(最適化しても浪費します)

struct tag unuseBigStruct ;

処理速度低下:最適化を阻害する時有り、

register j,k,l,m,n,o,p,q ; for(i = 0 ; i < sizeof(useBigstruct.buf) ; i++) { useBigstruct.buf[i] = 0 ; } }

修正後

static void Yes(void) { struct tag useBigstruct ; int i ; for(i = 0 ; i < sizeof(useBigstruct.buf) ; i++) { useBigstruct.buf[i] = 0 ; } }
解説: この警告が多量に出る時は、 以下の事が考えらえます。 (1) セルフチェック/クロスチェックを行っていない。 =>当初は必要であったが、修正しているうちに 不要になった。 (2) オリジナル関数をコピーして、微修正した。 =>似て非なる関数が他にある。 etc...