ruby-trunk-changes r43694 - r43701

今日はビルドプロセスの変更と super の末尾再帰最適化を有効にする変更がありました。

akr:r43694 2013-11-17 01:49:39 +0900

タイマースレッドと Fiber の初期化時のライブラリ関数がエラーを返した時のエラーメッセージに errno をそのまま書いていたところを strerror(3) を使ってメッセージ化したものを埋め込むようにしています。

svn:r43695 2013-11-17 01:49:44 +0900

version.h の日付更新。

akr:r43696 2013-11-17 01:57:03 +0900

r43694 に続きもう一ヶ所 Thread の生成時にもエラー時にメッセージに errno を埋め込んでいたところを strerror(3) を利用するようにしています。

sorah:r43697 2013-11-17 06:36:54 +0900

configure で Mac OS X で $SOLIBS を $LIBS で初期化しておくようにしています。さてこれは何のためか、というのが次のコミットで追記されています。

sorah:r43698 2013-11-17 06:45:51 +0900

r43697 の ChangeLog エントリに理由を追記しています。 libgmp が $LIBS にある環境でビルドできるようにするためということ。ふーむ? configure lflags=-lgmp ってした時ことですかね。

nobu:r43699 2013-11-17 23:34:24 +0900

string.c の tr_find() という static 関数の引数に const を付加しています。

nobu:r43700 2013-11-17 23:34:27 +0900

hash.c でコールバック関数を生成するための関数マクロ NOINSERT_UPDATE_CALLBACK() で生成する関数を static 関数にするように変更しています。またこのマクロを利用しているところで末尾にセミコロンが書かれていなかったので書くようにしています。関数定義の最後にセミコロンあっていいんですね。いや空文なのかな。

nobu:r43701 2013-11-17 23:34:30 +0900

VM 命令列のコンパイル時の最適化で send, send_simple の命令の末尾再帰の最適化を invokesuper の時、つまり super の呼び出しの時も有効にしています。