Hi

> * lib/benchmark.rb: fix benchmarck to work with current ruby.
> =A0patched by Benoit Daloze [ruby-core:33846] [ruby-dev:43143]
> =A0merged from https://github.com/eregon/ruby/commits/benchmark
>
> * =A0lib/benchmark (Report#width): update documentation
> * =A0lib/benchmark: document the return value of #benchmark and the
> =A0 :list attribute in Report
> * =A0lib/benchmark (Tms#format): rename variables, use String#%
> =A0 instead of Kernel.format
> * =A0lib/benchmark: remove undocumented Benchmark::times (an alias
> =A0 of Process::times used twice)
> * =A0lib/benchmark (#benchmark): use label_width for the caption
> * =A0lib/benchmark (Tms#initialize): rename variables
> * =A0lib/benchmark: allow title to not be a String and call #to_s
> * =A0lib/benchmark (Benchmark#bm): return an Array of the times with
> =A0 the labels
> * =A0lib/benchmark: correct output for Benchmark#bmbm
> =A0 (remove the extra space)
> * =A0lib/benchmark: add a few tests for Benchmark::Tms output
> * =A0lib/benchmark: improve style (enumerators, ljust, unused vars)
> * =A0lib/benchmark: add spec about output and return value
> * =A0lib/benchmark: improve basic style and consistency
> =A0 no parenthesis for print and use interpolation instead of printf
> * =A0lib/benchmark: remove unnecessary conversions and variables
> * =A0lib/benchmark: correct indentation
> * =A0lib/benchmark: rename the FMTSTR constant and variable to FORMAT
> * =A0lib/benchmark: remove useless exception
>
> * =A0test/benchmark: remove unused variable warnings

The change log says, test/benchmark has been changed only warnings issue
by this commit. However it has more widely change and it made a false posit=
ive
test failure on windows.


  1) Failure:
test_0001__ruby_dev_40906_can_add_in_place_the_time_of_execution_of_the_blo=
ck_gi
ven(Benchmark::Bugs) [C:/ruby/trunk/test/benchmark/test_benchmark.rb:127]:
Expected 0.0 to not be equal to 0.


Therefore, I commited following additional patch.
Thanks.

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- ChangeLog   (revision 30752)
+++ ChangeLog   (working copy)
@@ -1,3 +1,10 @@
+Tue Feb  1 13:20:39 2011  KOSAKI Motohiro  <kosaki.motohiro / gmail.com>
+
+       * test/benchmark/test_benchmark.rb (#capture_bench_output):
+         Added explict sleep. Windows have imprecise time support.
+         Thus Tms.new.Add!{} may be or may be not equal 0.
+         The test failure started since r30747.
+
 Tue Feb  1 11:03:47 2011  Ryan Davis  <ryan / lust.local>

        * lib/rubygems*: Import rubygems 1.5.0 (released version @ 1fb59d0)
Index: test/benchmark/test_benchmark.rb
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- test/benchmark/test_benchmark.rb    (revision 30752)
+++ test/benchmark/test_benchmark.rb    (working copy)
@@ -123,7 +123,7 @@
     it '[ruby-dev:40906] can add in-place the time of execution of the blo=
ck gi
ven' do
       t =3D Benchmark::Tms.new
       t.real.must_equal 0
-      t.add! {}
+      t.add! { sleep 0.1 }
       t.real.wont_equal 0
     end
   end