ruby-trunk-changes 2021-02-04

今日は拡張ライブラリ bigdecimal の更新や RISC V での異常終了時の C のバックトレース表示対応などがありました。

[1be84e53d7] Aaron Patterson 2021-02-01 18:42:13 UTC

variable.c の rb_define_const() で定数に代入する値の VALUE を rb_gc_register_mark_object() を呼んで pin down して GC.compact で移動しないようにしてたのをやめています。646131448eea616dfb388cfea84e34358caa7b47 で rb_define_module_id_under() で pin down するようになったのでその関連かなぁ、と思いましたが後に revert されています。

[6b4814083b] git 2021-02-03 17:35:37 UTC

version.h の日付更新

[33d6e92e0c] Aaron Patterson 2021-02-03 20:48:37 UTC

1be84e53d76cff30ae371f0b397336dee934499d を revert しています。やっぱり pin down 必要だったみたいです。

[b0d6563f13] 卜部昌平 2021-02-04 03:34:19 UTC

include/ruby/internal/intern/vm.h に rb_clear_method_cache_by_class() という既に存在しなくなってた関数の宣言が残ってたのを削除しています。

[868d66e0b5] Kenta Murata 2021-01-30 03:05:15 UTC

拡張ライブラリ bigdecimal のマクロや関数名の RMPD_ や rmpd_ などの prefix をやめて BIGDECIMAL_ などで置換しています。 rmpd ってどこから来た名前なんだろう。また DBLE_FIG というマクロの定義も削除してかわりに BIGDECIMAL_DOUBLE_FIGURES を利用するようにしています。

[4e2e1d6093] Kenta Murata 2021-01-30 04:00:03 UTC

拡張ライブラリ bigdecimal の rb_uint64_convert_to_BigDecimal() で整数からの変換に log10() を利用してたのをやめて uint64 で表現できる桁の最大数までのバッファを自動変数で用意して BIGDECIMAL_BASE で繰り返し割って配列に余剰を詰めていくように変更しています。高速化のためかな?

[46b5b51cc6] Dimitris Zorbas 2021-02-03 22:48:28 UTC

拡張ライブラリ socket の rdoc 用コメントで発生しうる例外の説明の typo を修正しています。

[90f008f569] S-H-GAMELINKS 2021-02-04 04:06:20 UTC

string.c で static 関数 str_new_shared() の前方宣言があったけど不要なので削除しています。

[7d22060c14] Yusuke Endoh 2021-02-04 08:45:54 UTC

addr2line.c の DWARF のデバッグ情報をデコードする時に DW_LNS_fixed_advance_pc という operation? のオペランドのデコードを修正しています。 [ruby-core:102394] [Bug #17609]

[f71659d47b] Yusuke Endoh 2021-02-04 08:47:12 UTC

6985bfb72c8d7e7d94f1aad1f0902b602bbfa6da. で RISC V 環境でバックトレース取得をしないようにしてたのを revert しています。 7d22060c14895bbca3ff962e5456384095b66738 で修正されたからではないかと思われます。 [ruby-core:102394] [Bug #17609]