Issue #3075 has been updated by Tinco Andringa.


I figured it out. Since the Duration object responds to .kind_of? Integer it gets turned into a rational, and then the function is recursed. Because @numerator is a Bignum and a.numerator a Duration, coerce gets called, and both are turned into floats. Duration should've overrode coerce, the problem lies with active_support so this ticket can be closed.
----------------------------------------
http://redmine.ruby-lang.org/issues/show/3075

----------------------------------------
http://redmine.ruby-lang.org