rubygems/rubygems — comment on commit 83804c03cfa484bbbaa160afb5b42cacb56b8a69
File: lib/rubygems/compatibility.rb line 11
By joliss:

I don't think this does what you intended. "and" and "or" have very low precedence, akin to perl's "or die" pattern, so this is equivalent to

(GEM_PRELUDE_SUCKAGE = RUBY_VERSION =~ /^1\.9\.2/) and RUBY_ENGINE == "ruby"

You should probably use && instead, and add parentheses to the regex match for good measure .