mruby master changes

mruby masterの変更履歴

2014-02-28 mruby master changes 1f134d7 - bd0244

mruby master changes 1f134d7 - bd0244

本日はFiberのブロックにbreakを実行できるようにする修正がありました

2014-02-28 18:55 Matz commit 1f134d7

sprintf.cのswitch文からbreakが削除され、次のcaseに行くようになりました。breakがないこと意図的にないことを示すためにコメントにfallthroughが追加されました commit 313f6bを戻しています

2014-02-27 23:42 chasonr commit d60944e

utf8エンコーディングのテストについて、mattnさんが提案したテストコードにリファクタリングしています

if "こんにちわ世界".size == 7 then

2014-02-26 20:53 chasonr commit b752b01

Fixnum#chrのテストコードを更新しています。

2014-02-26 20:18 chasonr commit 5e5ee84

UTF8でsprintf("%c")が動作するように実装しています。

2014-02-28 18:43 Matz commit 6bd3d88

Fiberオブジェクトでbreakを使用すると、セグメントフォルトになる不具合を修正しています

Githubから引用

loop do
  Fiber.new { break }.resume
end
% mruby a.rb
zsh: segmentation fault (core dumped)  mruby a.rb

引用ここまで

2014-02-28 10:01 Matz commit 03fde35

Fiberから戻ったときにProcを回復しているそうです。このコードは、Matz 2014-02-28 18:43 [commit 6bd3d88]で修正されています

2014-02-28 10:01 Matz commit f5ec21

[commit a14a672]の配列のテストのassert_equal(実値, 期待値)から assert_equal(期待値, 実値)に置き換えています

2014-02-28 08:50 ksss commit a14a672

配列のテストのリファクタリングです。assert_equal()で書き換えています

2014-02-28 02:07 cubicdaiya commit 833607

文字列を生成する関数mrb_str_new_static()に第3引数の長さをマイナスするとセグメントフォルトが起こる不具合を修正しています。マイナスを指定した場合には例外を発生させるようにしています

2014-02-28 01:30 cubicdaiya commit 30fe3f5

文字列を生成する関数mrb_str_new()に第3引数の長さをマイナスするとセグメントフォルトが起こる不具合を修正しています。マイナスを指定した場合には例外を発生させるようにしています

2014-02-28 00:36 take_cheeze commit 1266ab6

*.mrbファイル(irep)からデバッグ情報を削除するツールです。テストコードもあります。 このツールはrbファイルをmrbcでコンパイルして生成されたmrbファイルを読み込みます。 irepはmrubyが内部で使用しているRiteVMが解釈できるオペコードの配列です。

2014-02-28 00:20 cubicdaiya commit a238c9c

string.cから不要なインクリメントを削除しています

2014-02-27 23:54 ksss commit 88f3e5

array.cのwhileブロック内のif (capa == 0)の文をwhileブロックの外に出しています

2014-02-27 23:49 suzukaze commit caa139f91

kernel.rbにあるテストのリファクタリングです。assert_equal()をassert_true()とassert_false()に置き換えています

2014-02-27 22:42 cubicdaiya commit bd0244

リテラル文字列をmrb_str_cat()関数からmrb_str_cat_lit()マクロに置き換えています。mrb_str_cat()は文字数を指定する必要がありますが、mrb_str_cat_lit()マクロは文字列数を指定する必要がありません。また、mrb_str_cat_lit()マクロは文字数をコンパイル時に決定します