[#20525] [BigDecimal] changing rule of coerce — "Tadashi Saito" <shiba@...2.accsnet.ne.jp>

斎藤です。

44 messages 2003/07/07
[#20527] Re: [BigDecimal] changing rule of coerce — "Shigeo Kobayashi" <shigeo@...> 2003/07/07

小林です。

[#20528] Re: [BigDecimal] changing rule of coerce — matz@... (Yukihiro Matsumoto) 2003/07/07

まつもと ゆきひろです

[#20570] Marshal upgrade — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

41 messages 2003/07/09
[#20575] Re: Marshal upgrade — Masatoshi SEKI <m_seki@...> 2003/07/09

咳といいます。

[#20583] Re: Marshal upgrade — matz@... (Yukihiro Matsumoto) 2003/07/09

まつもと ゆきひろです

[#21016] Re: Marshal upgrade — matz@... (Yukihiro Matsumoto) 2003/07/30

まつもと ゆきひろです

[#20804] add library — nobu.nakada@... 2003/07/23

なかだです。

[#20580] add library(Re:ruby-dev:20570) — たむらけんいち <sgs02516@...>

たむらです。

30 messages 2003/07/09
[#20656] Re: add library — "NAKAMURA, Hiroshi" <nakahiro@...> 2003/07/14

なひです。

[#20658] Re: add library — GOTOU Yuuzou <gotoyuzo@...> 2003/07/14

In message <038d01c349cb$eaad71d0$93222fc0@sarion.co.jp>,

[#20659] Re: add library — matz@... (Yukihiro Matsumoto) 2003/07/14

まつもと ゆきひろです

[#20660] Re: add library — GOTOU Yuuzou <gotoyuzo@...> 2003/07/14

In message <1058171960.400840.10041.nullmailer@picachu.netlab.jp>,

[#20661] Re: add library — Takahiro Kambe <taca@...> 2003/07/14

話をそらしてしまうかもしれませんが、

[#20665] Re: add library — GOTOU Yuuzou <gotoyuzo@...> 2003/07/14

In message <20030714.183104.09092354.taca@back-street.net>,

[#20666] Re: add library — Takahiro Kambe <taca@...> 2003/07/14

In message <20030715.013655.424936247.gotoyuzo@kotetsu.does.notwork.org>

[#20668] Re: add library — GOTOU Yuuzou <gotoyuzo@...> 2003/07/14

In message <20030715.025907.26217115.taca@back-street.net>,

[#20750] Re: add library — Takahiro Kambe <taca@...> 2003/07/21

In message <20030715.051853.968499478.gotoyuzo@kotetsu.does.notwork.org>

[#20751] Re: add library — GOTOU Yuuzou <gotoyuzo@...> 2003/07/21

In message <20030721.163444.09092937.taca@back-street.net>,

[#20655] frozen ThreadGroup — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

26 messages 2003/07/14
[#20671] Re: frozen ThreadGroup — matz@... (Yukihiro Matsumoto) 2003/07/14

まつもと ゆきひろです

[#20673] Re: frozen ThreadGroup — Hidetoshi NAGAI <nagai@...> 2003/07/15

永井@知能.九工大です.

[#20676] Re: frozen ThreadGroup — matz@... (Yukihiro Matsumoto) 2003/07/15

まつもと ゆきひろです

[#20677] Re: frozen ThreadGroup — Hidetoshi NAGAI <nagai@...> 2003/07/15

永井@知能.九工大です.

[#20681] Re: frozen ThreadGroup — matz@... (Yukihiro Matsumoto) 2003/07/15

まつもと ゆきひろです

[#20690] portable(?) UserID/GroupID control (Re: frozen ThreadGroup) — Hidetoshi NAGAI <nagai@...> 2003/07/16

永井@知能.九工大です.

[#20712] Re: portable(?) UserID/GroupID control — Hidetoshi NAGAI <nagai@...> 2003/07/17

永井@知能.九工大です.

[#20735] Re: portable(?) UserID/GroupID control — matz@... (Yukihiro Matsumoto) 2003/07/20

まつもと ゆきひろです

[#20736] Re: portable(?) UserID/GroupID control — Hidetoshi NAGAI <nagai@...> 2003/07/20

永井@知能.九工大です.

[#20737] Re: portable(?) UserID/GroupID control — matz@... (Yukihiro Matsumoto) 2003/07/20

まつもと ゆきひろです

[#20748] [BigDecimal] exception handling — "Tadashi Saito" <shiba@...2.accsnet.ne.jp>

斎藤です。

20 messages 2003/07/21

[#20765] Re: [ruby-cvs] ruby/lib: * lib/tmpdir.rb: new library to get temporary directory path, — WATANABE Hirofumi <eban@...>

わたなべです。

9 messages 2003/07/21

[#20780] complex.rb — Masahiro TANAKA <masa@...>

complex.rb についての修正案を[ruby-math:00543]で提案しましたが、その後

25 messages 2003/07/22
[#20782] Re: complex.rb — matz@... (Yukihiro Matsumoto) 2003/07/22

まつもと ゆきひろです

[#20900] Re: complex.rb — Masahiro TANAKA <masa@...> 2003/07/25

At Tue, 22 Jul 2003 17:30:31 +0900, Yukihiro Matsumoto wrote:

[#20905] Re: complex.rb — matz@... (Yukihiro Matsumoto) 2003/07/25

まつもと ゆきひろです

[#20906] Re: complex.rb — keiju@... (石塚圭樹) 2003/07/25

けいじゅ@いしつかです.

[#20810] Rational 始めました。 — Shin-ichiro HARA <sinara@...>

原です。

13 messages 2003/07/23
[#20876] Re: Rational 始めました。 — keiju@... (石塚圭樹) 2003/07/24

けいじゅ@いしつかです.

[#20954] ruby 1.8.0 preview5 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

15 messages 2003/07/28

[#20957] [BigDecimal] conflict between Numeric#div and BigDecimal#div — "Tadashi Saito" <shiba@...2.accsnet.ne.jp>

斎藤です。

29 messages 2003/07/28
[#20960] Re: [BigDecimal] conflict between Numeric#div and BigDecimal#div — Masahiro TANAKA <masa@...> 2003/07/28

At Mon, 28 Jul 2003 18:26:20 +0900, Tadashi Saito wrote:

[#20962] Re: [BigDecimal] conflict between Numeric#div and BigDecimal#div — matz@... (Yukihiro Matsumoto) 2003/07/28

まつもと ゆきひろです

[#20990] Re: [BigDecimal] conflict between Numeric#div and BigDecimal#div — Masahiro TANAKA <masa@...> 2003/07/29

At Mon, 28 Jul 2003 21:16:08 +0900, Yukihiro Matsumoto wrote:

[#20992] Re: [BigDecimal] conflict between Numeric#div and BigDecimal#div — matz@... (Yukihiro Matsumoto) 2003/07/29

まつもと ゆきひろです

[ruby-dev:21007] Re: OS/2 EMX (was: ruby 1.8.0 preview5)

From: siena@... (Siena. / SHINAGAWA, Norihide)
Date: 2003-07-29 16:55:51 UTC
List: ruby-dev #21007
Siena. です。

パッチを作っていただいてありがとうございます。
file.c のパッチを除いて、問題なく make できました。
preview5 + [ruby-dev:21000] に対する差分を最後に付けておきます。


》> (3) configure.in の OS 識別子

》> OS/2 用の autoconf 2.5 を導入して使いましたが、いつの間にか、
》> OS/2 の識別子が os2_emx から os2-emx に変更されたようです。

》> 今回は、configure.in 中の OS 識別子を単純に置換して対応しましたが、
》> もしかすると os2_emx のままの autoconf も存在するかもしれません。
》
》configure.inでは os2?emx にしますか?

すっかり誤解していましたが、まつもとさんから [ruby-dev:21003] で
指摘していただいたように config.guess で os2-emx としているようです。
なので、os2-emx に固定してしまっても問題なさそうです。


》> (4) Makefile:{C,CXX,LD}FLAGS
》> 
》> 適切なオプションが分からないので、今まで使っていた
》> ruby 1.6.4 の rbconfig.rb を参考に次のように設定しました。

》> $ CFLAGS='-O2 -Zmts' CXXFLAGS='-O2 -Zmts' LDFLAGS='-Zbsd-signals' \
》> | CONFIG_SHELL='sh' ./configure --prefix=$MYRUBYDIR
》> 
》> (*) -Zmts はマルチスレッド対応 C ライブラリを静的リンクするオプション、らしい
》
》これは常に必要なんですよね。

無くても大丈夫な気もしますが、ちょっと分かりません。

-Zmts 無しだとシングルスレッド版の C ライブラリがリンクされます。
試したところ、make test は通り、幾つかのスクリプトも動作確認できました。
ruby がネイティブスレッドを使うようになるまでは不要なのかもしれません。
もしくは、拡張ライブラリでマルチスレッドしていたりする時とかでしょうか。

自信がないので、とりあえず以前の版に合わせて -Zmts を付けておきます。
しばらくの間、-Zmts 無しでコンパイルした ruby を使ってみて、
これに起因すると思われる問題が出たら改めて報告したいと思います。


》> (5) Makefile:LIBRUBY_A
》> 
》> ターゲット名に libruby-static.a が設定され、実際に生成されますが、
》> リンク時には ld が ruby-static.a をリンクしようとしてエラーでこけます。
》> やってないので不明ですが LIBRUBY_{SO,ALIAS} も同様かもしれません。
》
》OS/2では--enable-sharedはできないんでしたっけ。

送っていただいたパッチを当てた後に試してみたところ、リンク時に
_GLOBAL_OFFSET_TABLE_ を見つけられずに SEGV ってしまいました。

$ make clean
$ CONFIG_SHELL='sh' ./configure --enable-shared --prefix=$MYRUBYDIR
$ make
(略)
| main.c:40 (main.o): Undefined symbol 
  _GLOBAL_OFFSET_TABLE_ referenced from text segment
| eval.c:134 (ruby-static.a(eval.o)): Undefined symbol 
  _GLOBAL_OFFSET_TABLE_ referenced from text segment
(略)
| eval.c:144 (ruby-static.a(eval.o)): Undefined symbol 
  _GLOBAL_OFFSET_TABLE_ referenced from text segment
| eval.c:0 (ruby-static.a(eval.o)): More undefined symbol 
  _GLOBAL_OFFSET_TABLE_ refs follow
| 
| Process terminated by SIGSEGV
| core dumped
| gcc: Internal compiler error: program ld got fatal signal 11
| make: *** [miniruby.exe] Error 1


》> (6) mkconfig.rb
》> 
》> と、(1)〜(5) が分かるまで、直しては make しを繰り返していたのですが、
》> 場合によって、mkconfig.rb がエラーで止まってしまう事があります。
》> 他の環境では発生しない問題でしょうか?
》> 
》> | ./mkconfig.rb:135:in `rename': Permission denied 
》>   - rbconfig.rb.tmp or rbconfig.rb (Errno::EACCES)
》> |         from ./mkconfig.rb:135
》> | make: *** [rbconfig.rb] Error 1

》rename()で変更先のファイルが存在すると削除せずにエラーになると
》いうことでしょうか。あ、DOSISHはそうかも。
》
》とするとFile.rename自体を変更したほうがよさそうです。少なくとも
》_WIN32環境ではそうしてます。

なるほど。と思ったのですが、パッチを当てても現象は変わらずでした。
file.c というヒントをいただいたので試しつつ調べてみたところ、
EMX の rename() には次のような落とし穴がある事が分かりました。

rename():
| Restrictions: 
| rename() may set errno to EACCES instead of EEXIST if a file or 
| directory with the name pointed to by new_name already exists. 
| (Why does OS/2 return ERROR_ACCESS_DENIED instead of ERROR_FILE_EXISTS?) 

というわけで。preview5 + [ruby-dev:21000] の
file.c に対する次の変更で問題を回避できそうです。

$ diff -u ../ruby-1.8.0p5.1/file.c file.c
--- ../ruby-1.8.0p5.1/file.c	Wed Jul 30 00:05:44 2003
+++ file.c	Wed Jul 30 00:08:08 2003
@@ -1344,11 +1344,15 @@
 	extern unsigned long __attribute__((stdcall)) GetLastError();
 	errno = GetLastError(); /* This is a Cygwin bug */
 #elif defined DOSISH && !defined _WIN32
-	if (errno == EEXIST) {
+	if (errno == EEXIST
+#if defined (__EMX__)
+	 || errno == EACCES
+#endif
+	   ) {
 	    if (chmod(dst, 0666) == 0 &&
 		unlink(dst) == 0 &&
 		rename(src, dst) == 0)
-		rename INT2FIX(0);
+		return INT2FIX(0);
 	}
 #endif
 	sys_fail2(from, to);


---
Siena. <mailto:siena@faculty.chiba-u.jp>

In This Thread