Ruby Issue Tracking System: Issueshttps://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112011-06-22T05:28:35ZRuby Issue Tracking System
Redmine Ruby master - Bug #4914 (Rejected): Array#index fails when used in if statement assignmenthttps://bugs.ruby-lang.org/issues/49142011-06-22T05:28:35Zbterkuile (Benjamin ter Kuile)bterkuile@gmail.com
<p>cat /etc/issue: Ubuntu 11.04<br>
rvm -v: rvm 1.6.2<br>
rvm 1.9.2, ruby -v: ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux]<br>
Also tested with: rvm 1.9.2-head, ruby -v: ruby 1.9.2p274 (2011-06-06 revision 31932) [x86_64-linux]</p>
<p>Test code:</p>
<p>a = [:a, :b, :c]<br>
for k in 'a'..'c'<br>
if i = a.index(k.to_sym) && k.to_s =~ /b/<br>
puts i<br>
end<br>
end<br>
for k in 'a'..'c'<br>
i = a.index(k.to_sym)<br>
if i && k.to_s =~ /b/<br>
puts i<br>
end<br>
end</p>
<p>output:<br>
0<br>
1</p>
<p>expected output:<br>
1<br>
1</p> Backport191 - Bug #1653 (Closed): YAML load_documents fails on specification example without newl...https://bugs.ruby-lang.org/issues/16532009-06-18T18:20:56Zbterkuile (Benjamin ter Kuile)bterkuile@gmail.com
<h2>=begin<br>
I was experimenting with how multiple documents in one file are processed by YAML. I went to the yaml specification site and copied an example there(<a href="http://yaml.org/spec/current.html" class="external">http://yaml.org/spec/current.html</a>).<br>
In irb:<br>
str = "---<br>
time: 20:03:20<br>
player: Sammy Sosa<br>
action: strike (miss)<br>
...</h2>
<p>time: 20:03:47<br>
player: Sammy Sosa<br>
action: grand slam<br>
..."<br>
YAML::load_documents(str){|d| puts d.inspect}</p>
<p>results in: {"player"=>"Sammy Sosa", "action"=>"strike (miss)", "time"=>72200}<br>
ArgumentError: syntax error on line 8, col 3: <code>' from /usr/lib/ruby/1.8/yaml.rb:217:in </code>load_documents'<br>
from /usr/lib/ruby/1.8/yaml.rb:217:in <code>each_document' from /usr/lib/ruby/1.8/yaml.rb:232:in </code>load_documents'<br>
from (irb):11</p>
<p>while: YAML::load_documents(str+"\n"){|d| puts d.inspect} # Added newline ad end<br>
Results in:<br>
{"player"=>"Sammy Sosa", "action"=>"strike (miss)", "time"=>72200}<br>
{"player"=>"Sammy Sosa", "action"=>"grand slam", "time"=>72227}<br>
which is what I expected in the first place.</p>
<p>This test is done in irb for ruby versions:<br>
1.8.7-72<br>
and<br>
1.9.0<br>
=end</p>