ruby-trunk-changes 2020-05-05

今日は GC.compact の戻り値で compact 対象じゃないオブジェクト型のキーを含めないようにする変更などがありました。

[5ef019e8af] Aaron Patterson 2020-05-04 18:33:00 UTC

GC.compact の戻り値になる移動オブジェクトの統計情報を得る gc_compact_stats() という関数で struct RBasic::flags 内のオブジェクト型ごとにループする処理が 2度あったので共通のループにして内部で分岐を並べるようにしています。また移動が起きてなかったタイプのオブジェクトについて Hash にセットしないようにしています。これは GC.compact に未対応な型を含めないようにする意図のようですが、偶然 0 になった場合にキーがなくなるのでちょっと扱いずらくならないかな。

[dc13a98065] git 2020-05-04 20:50:47 UTC

version.h の日付更新

[f0b5629c8c] Nobuyoshi Nakada 2020-05-05 04:53:44 UTC

テスト用のユーティリティ EnvUtil の labeled_module, labeled_class でインスタンスメソッドの to_s, inspect に追加して name も渡した名前をかえすように(alias を定義して)います。