木村(わ)といいます。

1.9.2のmake test-allで以下の失敗が起きました。
ruby 1.9.2dev (2010-08-05 revision 28875) [x86_64-darwin10.4.0]

----
  1) Failure:
test_require_too_long_filename(TestRequire) [/Volumes/CHome/kimuraw/work/ruby_1_9_2/test/ruby/test_require.rb:23]:
<[":ok"]> expected but was
<[]>.
----

----
% cat -n test/ruby/test_require.rb
     :
    22	  def test_require_too_long_filename
    23	    assert_in_out_err([], <<-INPUT, %w(:ok), [])
    24	      begin
    25	        require '#{ "foo/" * 10000 }foo'
    26	      rescue LoadError
    27	        p :ok
    28	      end
    29	    INPUT
    30	
    :
----

ここではLoadErrorが期待されていますが、StackErrorが起きています。

----
% /usr/local/stow/ruby-1.9.2-head/bin/ruby -v -e 'require %Q!#{"foo/" * 10000}foo!'    
ruby 1.9.2dev (2010-08-05 revision 28875) [x86_64-darwin10.4.0]
/usr/local/stow/ruby-1.9.2-head/lib/ruby/1.9.1/rubygems/gem_path_searcher.rb:73: stack level too deep (SystemStackError)
----

trunkではLoadErrorになり該当のテストは成功しています。

----
% /usr/local/stow/ruby-1.9-trunk/bin/ruby -v -e 'require %Q!#{"foo/" * 10000}foo!' 
ruby 1.9.3dev (2010-08-08 trunk 28912) [x86_64-darwin10.4.0]
  :
/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo/foo (LoadError)
	from <internal:lib/rubygems/custom_require>:29:in `require'
	from -e:1:in `<main>'
----

原因はわからないのですが、変更をさかのぼってみたところ
r28786から起きているようです。

-- 
kimura wataru