Gauche > Archives > 2011/12/26

2011/12/26 00:31:53 UTCenami
#
細かい話ですが, must be between 0 and %d, inclusive", FD_SETSiZE) だと FD_SETSIZE も OK ってことになっちゃいません?
2011/12/26 00:40:41 UTCshiro
#
む、そのとおり。
2011/12/26 01:42:04 UTCshiro
#
gcを7.2alpha6にアップデートしたので、Linux以外のプラットフォームで試してもらえるとありがたい。
2011/12/26 01:49:42 UTC(び)
#
Mac OS X Lion (10.7.2 11C74)ではビルドOK、全テストPassでした。
2011/12/26 01:53:03 UTCshiro
#
まはろ〜
2011/12/26 02:14:32 UTC(び)
#
FreeBSD/amd64 8.2Rも、ビルドOK、全テストPassでした。
2011/12/26 02:17:36 UTCshiro
#
golferには悪いニュース、と書いたが、0.9.3ではiotaを始めsrfi-1の主要関数は組み込みになるのでgolfer的にはむしろ使いやすいかもしれん。
2011/12/26 02:17:47 UTCkaki
#
Mac OS X Leopard (10.5.8) で -no_pie 消したらビルドOK,全テストPassしました.-no_pie はまだ手動で消さないといけないようです.
2011/12/26 02:18:04 UTCshiro
#
あ、その対策ってやってなかったっけ。
#
消すところって、configure.acの582行目でいいですか?
#
あと、Leopardで ./config.guess の出力が何になるか教えてもらえるとありがたいです。
2011/12/26 02:21:04 UTCkaki
#
i386-apple-darwin9.8.0
でした.
#
破壊的に書き換えてしまったのでちょっと行数がわからないんですが,configure.acから消しました.
2011/12/26 02:23:41 UTCshiro
#
これで ./DIST gen; gauche-config --reconfigure | sh からやってみていけます? https://gist.github.com/1520406
2011/12/26 02:35:51 UTCshiro
#
ところでgitはファイルを(git mvを使わずに)リネームした場合でも、コミット時に何がどれにリネームされたかを検出してくれる。完全一致でなくても良いので、開発者本人はリネームのつもりはなくて、古いファイルの主要部分を新しいファイルにコピペした場合でも一致率が高ければリネームと判断してくれる。これは地味だけどよい機能だなあと感心する。
2011/12/26 02:36:40 UTCkaki
#
ビルドOK全テストPassしました!
2011/12/26 02:38:34 UTCshiro
#
感心するのは開発者の「気遣い」。作る方から考えると、この機能はナイーブに実装すると「新規ファイル数」×「削除ファイル数」のdiffが必要になる。こういう、あんまりスケールしなさそうな機能ってできれば実装せずに済ませたい。「mvはユーザが自己申告する」としてしまえば実装せずに済ませられる。
2011/12/26 02:40:06 UTCkaki
#
srfi-1の主要関数が組み込みになるのは嬉しいです.iotaのために(use srfi-1)とかやって長くなることが珍しくなかったので…
2011/12/26 02:40:26 UTCshiro
#
でも、使う立場からすると、「そのくらい機械が判断してくれよ」と思う。機械はもっと賢くなってほしい。gitの実装がどうやってるかはしらないけど、そういうのをやっちゃってるのはえらいと思う。
#
まはろ〜 > kaki。
#
no_pie対策したのだけれど、逆にSnow LeopardやLionで動くかどうか検証していただけるとありがたいです commit 63c87ae
2011/12/26 02:49:12 UTCenami
#
NetBSD では gc7.2alpha6 自体のコンパイルに失敗しますね.
2011/12/26 02:49:45 UTC(び)
#
Lion OKです。(make maintainer-clean && ./DIST gen && gauche-config --reconfigure|sh && make && make -s check)
2011/12/26 02:51:01 UTCenami
#
gc/os_dep.c で以前から二箇所定義されていた GC_data_start が初期化されるようになったため.
2011/12/26 02:54:08 UTCenami
#
とりあえず一方を ifdef out してコンパイルを通すと NetBSD 5.1 のブランチではテストとおります.
2011/12/26 02:55:17 UTCenami
#
-current では gctest がこけますね.
2011/12/26 02:55:44 UTCshiro
#
ふーむ。gctestのどれがこけますか?
2011/12/26 02:58:19 UTCenami
#
まさに gctest っていうバイナリが segv なんですが,これってもっと詳しい情報でるんでしたっけ?
2011/12/26 02:58:55 UTCenami
#
ちなみに 5.1 のほうはテストはとおるんですが,こういうメッセージがでます.
2011/12/26 02:59:00 UTCenami
#
Testing optimizer ...                                            passed.
Testing control ...                                              passed.
Testing debug features ...                                       passed.
Testing utility scripts ...                                      gosh: WARNING: Error while loading initialization file: cannot find file "gauche-init.scm" in *load-path* ("/usr/local/share/gauche-0.9/site/lib" "/usr/local/share/gauche-0.9/0.9.2/lib" "/usr/local/share/gauche/site/lib" "/usr/local/share/gauche/0.9/lib")(error).
passed.
Total: 12504 tests, 12504 passed,     0 failed,     0 aborted.
2011/12/26 02:59:14 UTCshiro
#
うがー。それはgdbで追っかけないとだめだなあ。 あ、そのWARNINGは今気づいて直してるところです。
2011/12/26 03:06:25 UTCenami
#
_rtld のなかで SIGTRAP ...
2011/12/26 03:10:35 UTCshiro
#
GC_data_startの方はgc MLで話題が出ててより新しい方でfixされたっぽい。currentの方が問題だな
2011/12/26 03:15:15 UTCshiro
#
NetBSD関係のfixで最近のはこれだけだなあ https://github.com/ivmai/bdwgc/commit/ce5d588c6422d83ee76d8ee925b70528bec0b560 これはdata_start問題ですよね
2011/12/26 03:28:34 UTCenami
#
そうですね
2011/12/26 03:45:16 UTCshiro
#
ふーむ、Windowsでもソケット限定でselect()使いたいときあるかなと思ってmingwでselect()使えるようにしたんだけど、mingwのfd_setの定義ではFD_SETSIZEが64固定で、Windows側の割り当てるソケットのfdは0からじゃなくて飛んでるので全然だめだった…
2011/12/26 04:00:48 UTCshiro
#
いや、違う違う。Winsock2のFD_SETSIZEはfd_setに格納するソケットディスクリプタの数の最大数であって、ソケットディスクリプタそのものの値は関係ないのだ。だからチェックコードの方がおかしいんだな。