That's weird. If you go back to the previous change that was made in numeric.c, the fix2uint specs do pass: Arthurs-iMac-2:rubyspec arthur$ ../mspec/bin/mspec optional/capi/fixnum_spec.rb ruby 2.1.0dev (2013-03-31 trunk 40017) [x86_...NoKarma (Arthur Schreiber)
=begin I guess I somehow incorrectly formatted the issue description, so here it is again with proper formatting. --- Up until the change that was made in ((<URL:https://github.com/ruby/ruby/commit/92f59c6d7937b14bb5eefb052099ef0a...NoKarma (Arthur Schreiber)
Up until the change that was made in ((<URL:https://github.com/ruby/ruby/commit/92f59c6d7937b14bb5eefb052099ef0a3ef3bcd0>)), (({rb_fix2uint})) would raise a (({RangeError})) if it was given a negative value like (({-1})) (e.g. when using...NoKarma (Arthur Schreiber)
=begin As Hash#fetch, Net::HTTPHeaders#fetch does raise an IndexError when neither a default value nor a block was passed and the requested key can not be found.
=begin Ok, the old patch is bugged. Converting keys to Strings using #to_s might result in duplicated element attributes, so this change has been removed.