From: Gennady Date: 2004-06-03T03:31:59+09:00 Subject: A bug in logical 'or' with regexp? I am still using Ruby 1.6.8 and just came across a very strange thing ( nil || %r{abc} ) yields false no matter what regular expression you use, while, ( nil || 3) yields 3, as it should. Is it a known issue for 1.6.8? I checked that everything works fine in 1.8.1. Here's more information from irb: [linux.gfbs:449]gfb-ems-session_1> ruby -v ruby 1.6.8 (2002-12-24) [i686-linux] [linux.gfbs:450]gfb-ems-session_1> irb irb(main):001:0> nil || 3 => 3 # OK irb(main):002:0> nil || // => nil # WRONG irb(main):003:0> nil || %r{abc} => nil # WRONG irb(main):004:0> ( (nil) || (%r{abc}) ) => nil # WRONG irb(main):005:0> nil || "abc" => "abc" # OK irb(main):006:0> Thank you, Gennady.