ruby-trunk-changes 2022-05-22

今日は ppc, ppc64 アーキテクチャ対応の coroutine 追加などがありました。

[7e52533104] Nobuyoshi Nakada 2022-05-21 13:58:45 UTC

Exception#full_message のキーワード引数の解釈を行なう check_highlight_keyword() および check_order_keyword() でキーワード引数が格納されている Hash を参照するのに rb_hash_aref() を使っていたのを rb_hash_lookup() を利用するようにしています。Hash のデフォルト値を無視するようにしているみたいです。

[84257244cd] git 2022-05-21 16:12:29 UTC

version.h の日付更新

[539459abda] Sergey Fedorov 2022-05-22 03:02:03 UTC

Fiber 用の coroutine の実装に ppc および ppc64 のアーキテクチャの対応を追加しています。また confgure でも powerpc-darwin および powerpc64-darwin の対応を追加しています。古い mac の対応のためですかね。 https://github.com/ruby/ruby/pull/5927

[009a514668] Nobuyoshi Nakada 2022-05-22 05:18:27 UTC

539459abda3f4e086ca060620dee2586ebfed873 で thread_pthread.c に追加した native_thread_native_thread_id() の対応を revert しています。 preprocessor 分岐によって宣言されてない変数の参照ができてしまってたようです。

[e79983a448] Nobuyoshi Nakada 2022-05-22 06:26:42 UTC

configure で macOS の時に 319afed20fba8f9b44611d16e4930260f7b56b86 で導入した __thread という修飾子でコンパイラに変数を thread local storage として扱うようにする機能がサポートされているかチェックするため preprocess だけでなくコンパイルまで実施するようにしています。