しゃある通信

#26-01 integer width
そういえば libc をコンパイルしていたんだなあ、と思い出しモニタの電源を入れる。

_loadrlm.c: In function `_loadrlimits':
_loadrlm.c:     43: warning: integer overflow in expression

んあ? なんだこりゃ。該当行は

        _limits[RLIMIT_FSIZE ].rlim_max = 16774144 * 1024;

これを 32bit に収めれって書き方をしているのか。ある意味すげぃ。さてどうしてくれよう。 gcc1 -Wall でコンパイルするとなにも警告を出さないで終了する。おい〜。結局 32bit の最大値 LONG_MAX を代入しておく。

utime/utime.c で gcc2 のバグらしきものを発見。共用体の全体を指すメンバを参照しているところで

utime.c: In function `utime':
utime.c:    116: warning: `datetime' might be used uninitialized in this function

といってるが、bit field structure 部分はすでに初期化しているのだ。Bit field だからかなあ。 しかたがないので Makefile に

WARNING_FLAGS =
を追加してしのぐ。

Regression として jperl を選択。手抜きリンクすると mathcc 関連に不具合が。ぬう。 風呂入って会社いこうっと。



マクロミルへ登録

© 1998 Kazuya 'Sharl' Masuda
(C)Willoo Entertainment Inc. (C)Konami Digital Entertainment 株式会社ウィローエンターテイメント及び株式会社コナミデジタルエンタテインメントの著作権を侵害する行為は禁止されています。 0.004937 cached