ついでに見つけたのですが、WeakRef.new(0.0) とすると次のようなエラーに
なるようです。

% ruby -v -rweakref -e 'WeakRef.new(0.0)'
ruby 1.9.0 (2004-01-26) [i686-linux]
/home/akr/ruby/lib/ruby/1.9/weakref.rb:60: warning: instance variable @__id not initialized
/home/akr/ruby/lib/ruby/1.9/weakref.rb:64: warning: instance variable @__id not initialized
/home/akr/ruby/lib/ruby/1.9/delegate.rb:33:in `initialize': /home/akr/ruby/lib/ruby/1.9/weakref.rb:64:in `_id2ref': no implicit conversion from nil to integer (TypeError)
        from /home/akr/ruby/lib/ruby/1.9/delegate.rb:30:in `eval'
        from /home/akr/ruby/lib/ruby/1.9/delegate.rb:33:in `initialize'
        from /home/akr/ruby/lib/ruby/1.9/delegate.rb:30:in `each'
        from /home/akr/ruby/lib/ruby/1.9/delegate.rb:30:in `initialize'
        from /home/akr/ruby/lib/ruby/1.9/weakref.rb:44:in `initialize'
        from -e:1:in `new'
        from -e:1
-- 
[田中 哲][たなか あきら][Tanaka Akira]