ruby-trunk-changes r40594 - r40601

今日は akr さん無双でおもに警告除去のためなどの軽微な修正でした。

akr:r40594 2013-05-07 12:09:15 +0900

pack.c で swap32() と swap64() という関数マクロの定義を gcc 4.3.0 以降では __builtin_bswap{32,64} を使って定義するところで、あらかじめ swap32/swap64 が定義されていたら再定義はしないように #ifdef の条件を追加しています。

svn:r40595 2013-05-07 12:09:20 +0900

version.h の日付更新。

akr:r40596 2013-05-07 12:10:46 +0900

cygwin 環境で UNIX ドメインソケットによる file descriptor passing が使えないので、拡張ライブラリ socket の extconf.rb で条件分岐を追加しています。

akr:r40597 2013-05-07 12:12:32 +0900

拡張ライブラリ socket の Socket.ip_address_list の実装で定義している EXTRA_SPACE というマクロにキャストを追加しています。コンパイラの警告除去のため。

akr:r40598 2013-05-07 12:14:47 +0900

拡張ライブラリ socket の Addrinfo#inspect の実装で anc_inspect_ipv6_pktinfo() という関数を呼ぶ時の #if の条件が関数を定義する時の条件と一致していなかったので、条件を追加して一致させています。

akr:r40599 2013-05-07 12:19:52 +0900

拡張ライブラリ socket の ext/socket/ancdata.c で、特定のプラットフォーム(Bionic)での比較演算子コンパイラ警告除去のため明示的なキャストを追加しています。

akr:r40601 2013-05-07 22:15:13 +0900

拡張ライブラリ readline で ISALPHA() に (char *) 型のポインタを dereference する前に (unsigned char *) にキャストするようにしています。 cygwin でのコンパイル警告の除去のためとのこと。 ISALPHA() は rb_isalpha( (unsigned char)(c) ) に展開されるので、いずれにせよ dereference 後に unsigned char にキャストされるのですが、それで警告が出るようですね。