ruby-trunk-changes r39955 - r39969

今日はビルドプロセスの変更やmkmf.rbの不具合修正、数値の範囲のチェックのリファクタリングなどがありました。

nobu:r39955 2013-03-27 05:15:41 +0900

昨日の r39934 からの一連のテスト変更の続き。 test_syntax のヒアドキュメント内で文字列展開(埋め込み)してたソースディレクトリを引数で渡してたのでそれを使うように変更。これ結果は同じになるような気がしますが引数に渡す理由ってなんでしょう。

nobu:r39956 2013-03-27 05:15:44 +0900

configure で SIGNEDNESS_OF_XXX という型の符号ありなしを判定したマクロを定義できるようにして、SIGNEDNESS_OF_TIME_T を作ってそれを r39939 や r39943 や r39948 で定義していた TIMET_MAX, TIMET_MIN, TIMET_MAX_PLUS_ONE などの定義に利用するようにしています。

nobu:r39957 2013-03-27 06:39:47 +0900

defs/gmake.mk で test-all が test-knownbugs ターゲットに依存しないようにしています。 knownbugs が指定された時は TEST_TARGETS に含まれるので依存関係をつけて同時に実行されないようにする必要がないってことでしょうか。

nobu:r39958 2013-03-27 06:39:50 +0900

mkmf.rb が関数チェック用に作る C のソースで チェック用の関数が main から参照されていないため最適化で消される可能性があったのを、main 関数内で関数ポインタとして参照するようにしています。 [ruby-core:53745] [Bug #8169]

akr:r39962 2013-03-27 12:03:36 +0900

r39956 からのさらに続きで TIMET_MAX_PLUS_ONE の計算を簡単にしています。

akr:r39963 2013-03-27 12:08:25 +0900

test/-ext-/num2int/test_num2int.rb でテストする型を間違えていたのを修正。

nobu:r39964 2013-03-27 12:42:19 +0900

defs/gmake.mk で test-all と test-knownbug に依存関係をつけて実行順と並列して実行されないようにしています。 あれ、r39957 での変更はだめだったってことでしょうか。

nobu:r39965 2013-03-27 15:17:36 +0900

thread_pthread.c で poll.h を二重に include していた(ruby/io.h で include 済み)ので include を削除しています。

nobu:r39966 2013-03-27 16:40:43 +0900

r39956 で定義するようにした SIGNEDNESS_OF_TIME_T を win32/Makefile.sub でも定義するようにしています。

akr:r39967 2013-03-27 20:37:59 +0900

Time.at の引数のチェックを to_str の有無でしていたところを to_int の有無をみるように変更しています。 [ruby-core:53764] [Bug #8173]

akr:r39968 2013-03-27 21:01:40 +0900

test/-ext-/num2int/test_num2int.rb で asert_num2i_success と asert_num2i_error というユーティリティを定義して使いまわすリファクタリング

akr:r39969 2013-03-27 22:12:27 +0900

numeric.c で浮動小数点数が long や long long にした時ダウンフローしないかのチェックに新しいマクロ LONG_MIN_MINUS_ONE_IS_LESS_THAN() および LLONG_MIN_MINUS_ONE_IS_LESS_THAN() を導入してこれを使うようにしています。