ruby-trunk-changes r46913 - r46926

今日は構造体を pack するマクロの修正や、標準添付ライブラリのサンプルコードをライブラリ自体のファイルから sample/ ディレクトリのファイルに分離する変更などがありました。

nobu: r46913 2014-07-23 23:50:00 +0900

r46382 の再修正である r46384 での configure.in の変更でカンマが抜けていたところがあったのを修正しています。 [ruby-core:62968] [Bug #9914]

nobu: r46914 2014-07-23 23:50:02 +0900

構造体を pack するコンパイラ拡張機能を使うための関数マクロ PACKED_STRUCT_UNALIGNED() の定義を configure で定義してたのを include/ruby/defines.h で条件分岐して定義するようにしています。 universal binary のためとのこと。

nobu: r46915 2014-07-23 23:50:12 +0900

r46914 で PACKED_STRUCT_UNALIGNED() の定義のために参照してた UNALIGNED_WORD_ACCESS というマクロの定義を ppc64 アーキテクチャでも 1 にするようにしています。 [ruby-core:63937] [Feature #10081]

hsbt: r46917 2014-07-24 04:31:18 +0900

標準添付ライブラリ pstore で if __FILE__ == $0 で括って書かれていたサンプルコードを sample/pstore.rb に分離しています。

svn: r46918 2014-07-24 04:31:30 +0900

version.h の日付更新。

svn: r46919 2014-07-24 04:31:36 +0900

r46917 で新規追加された sample/pstore.rb の svn property 設定。

hsbt: r46920 2014-07-24 04:44:23 +0900

標準添付ライブラリ tempfile でも if __FILE__ == $0 で括って書かれてたサンプルプログラムを sample/tempfile.rb に分離しています。

svn: r46921 2014-07-24 04:44:30 +0900

r46920 で新規作成した sample/tempfile.rb の svn property 設定。

hsbt: r46922 2014-07-24 04:45:09 +0900

標準添付ライブラリ benchmark でも if __FILE__ == $0 で括られたサンプルコードがあったのを sample/benchmark.rb に分離しています。

svn: r46923 2014-07-24 04:45:12 +0900

r46922 で新規作成した sample/benchmark.rb の svn property 設定。

nobu: r46924 2014-07-24 09:59:51 +0900

ext/rbconfig/sizeof/depend でソースツリー以外のディレクトリで nmake でビルトする時の対応で sizes.c のターゲットの書きかたを修正しています。

ngoto: r46925 2014-07-24 16:03:38 +0900

r46884 で rb_io_buffer_t に PACKED_STRUCT() を使って構造体サイズを切り詰めるようにしたところ Sparc64 で Bus error が発生するようになったとのことで、PACKED_STRUCT() ではなく PACKED_STRUCT_UNALIGNED() を使うように変更しています。 プラットフォームのことを考慮しているのは PACKED_STRUCT_UNALIGNED() で PACKED_STRUCT() は直接は使うべきではないとのこと。そうなのか…。 [ruby-core:63988] [Bug #10088]

nobu: r46926 2014-07-24 17:22:17 +0900

r35489 で parse.y に不要な ";" が残ってたのを削除しています。