From: "Peña, Botp" Date: 2007-05-31T10:38:26+09:00 Subject: `concat': can't modify frozen string in benchmark.rb Hi All, C:\family\ruby>cat test.rb def f(command_here) `#{command_here}` end a = { "Local copy"=>"copy test.txt test.txt2" } require 'benchmark' Benchmark.bmbm do |x| a.each do |k,v| x.report(k) { f v } end end C:\family\ruby>ruby test.rb c:/ruby/lib/ruby/1.8/benchmark.rb:334:in `concat': can't modify frozen string (T ypeError) from c:/ruby/lib/ruby/1.8/benchmark.rb:334:in `report' from test.rb:12 from test.rb:11:in `each' from test.rb:11 from c:/ruby/lib/ruby/1.8/benchmark.rb:250:in `bmbm' from test.rb:10 C:\family\ruby> if i comment out line 334 in benchmark.rb like so, #label.concat ' ' It works. It also works for the ff cases x.report(k) { f v } x.report() { f v } x.report("") { f v } x.report("test") { f v } What is the relevance of line 334 in benchmark.rb? If the line is important, how can I fix my program so I can pass a var in x.report? thank you and kind regards -botp