Actions
Bug #11947
closedBigDecimal#coerce: unexpected behavior with Float
Description
I've noticed that:
BigDecimal('2') + 1 # => BigDecimal(3), OK
1 + BigDecimal('2') # => BigDecimal(3), OK
# whereas
BigDecimal('2') + 1.1 # => BigDecimal(3.1), OK
1.1 + BigDecimal('2') # => Float(3.1), WHY?
I was expecting the latest to return a BigDecimal but it retuns a Float. In the unit tests for bigdecimal, one can find the following test:
assert_equal(2, 1 + BigDecimal.new("1"), '[ruby-core:25697]')
May be this behavior is required but I haven't found any reason for this.
Regards,
Lionel
Actions
Like0
Like0Like0