From: Nobuyoshi Nakada Date: 2007-07-25T17:13:38+09:00 Subject: [ruby-dev:31297] Re: trunk: バグを指摘している警告(cygwin) なかだです。 At Tue, 17 Jul 2007 17:05:53 +0900, Nobuyoshi Nakada wrote in [ruby-dev:31241]: > At Mon, 16 Jul 2007 21:23:01 +0900, > pegacorn wrote in [ruby-dev:31239]: > > 今度は、cygwin 環境で -Wall を付けてコンパイルしてみました。 > > > > gcc -g -O2 -Wall -I. -I.ext/include/i386-cygwin -I./include -I. -DRUBY_EXPORT -c dln.c > > dln.c: In function `conv_to_posix_path': > > dln.c:1615: warning: implicit declaration of function `cygwin32_conv_to_posix_path' > > gcc -g -O2 -Wall -I. -I.ext/include/i386-cygwin -I./include -I. -DRUBY_EXPORT -c ruby.c > > ruby.c: In function `ruby_push_include': > > ruby.c:190: warning: implicit declaration of function `conv_to_posix_path' > > conv_to_posix_path()は元はdln.cでも使っていたのですが、今は > ruby.cでしか使っていません。ruby.cにそのまま移動してもいいかも > しれませんが、最後のチェックはなんだか意味不明だし、 > rubylib_mangle関係もそろそろ消していいと思います。 やはりRUBYLIBや-Iで長いパスを与えるとスタックを破壊して落ちるの で、修正します。 $ d=`cygpath -wa ../ext/i386-cygwin` $ RUBYLIB="$d;$d;$d;$d;$d;$d;$d;$d" ruby -e 'p $:' -e: [BUG] Segmentation fault ruby 1.8.6 (2007-03-13) [i386-cygwin] Hangup > わたなべさんは、POSIX pathへの変換自体をやめにしたいそうですが。 ひとまずmangleも含めて同じ動作をするようにしておきます。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦