ruby-trunk-changes r36557 - r36570

nari:r36557 2012-07-29 00:34:44 +0900

gc.c の rb_objspace の初期化の不要な初期化子を削除しています。不要だった上に多分狙ったところに格納されてなかったんじゃないかと思われます。

svn:r36558 2012-07-29 00:34:49 +0900

version.h の日付更新。

nobu:r36559 2012-07-29 02:04:58 +0900

variable.c で TYPE() マクロを利用していたところを RB_TYPE_P() で分岐したり、SPECIAL_CONST_P()(即値かどうかを判定する)と BUILTIN_TYPE() を使うようにリファクタリングしています。

shirosaki:r36563 2012-07-29 06:41:37 +0900

r36556 で x86_64_mingw32 で _gmtime64_s() と _localtime64_s() の宣言を追加していたのですが MINGW_HAS_SECURE_API というマクロが定義されているとこれらの関数が宣言されるそうで、このマクロの有無をチェックして宣言するようにしています。

ktsj:r36565 2012-07-29 14:28:04 +0900

r36539 で th->async_errinfo_queue_checked と th->async_errinfo_mask_stack を ObjectSpace から見えないように klass = 0 にする(rb_ary_tmp_new() を使う)ようにしたのですが、rb_ary_dup() の後で klass = 0 しようとしていたつもりがなぜか rb_ary_tmp_new() の後でクリア(重複しているので不要)していたのでそれを削除しています。

nobu:r36566 2012-07-29 23:56:52 +0900

win32/win32.c の rb_w32_inet_ntop() の戻り値の型に const を付けています。

nobu:r36567 2012-07-29 23:57:30 +0900

拡張ライブラリ socket で Windows 環境では inet_ntop() のかわりに rb_w32_inet_ntop() を利用するようにマクロを定義しています。HAVE_ARPA_INET_H が未定義の時に宣言を追加していたのを削除しているのは元々 Windows 環境向けだったということでしょうか。

nobu:r36568 2012-07-30 00:25:29 +0900

と思ったら socket で rb_w32_inet_ntop() を使うのは mingw64 の時だけに変更されています。宣言の追加は戻さなくてもいいのかなぁ。

svn:r36569 2012-07-30 00:25:34 +0900

version.h の日付更新。

nagachika:r36570 2012-07-30 01:00:36 +0900

r36565 と同じく r36539 で klass = 0 でクリアして ObjectSpace から見えなくする処理がずれていたので rb_ary_dup() の後で dup すると klass が設定されたオブジェクトが返ってくるので改めて klass=0 でクリアするようにしています。