From: muraken@...
Date: 2016-12-10T13:03:34+00:00
Subject: [ruby-core:78581] [Ruby trunk Bug#12952][Closed] Incompatibility of a method signature between `Float#round` and `BigDecimal#round`

Issue #12952 has been updated by Kenta Murata.

Status changed from Assigned to Closed

----------------------------------------
Bug #12952: Incompatibility of a method signature between `Float#round` and `BigDecimal#round`
https://bugs.ruby-lang.org/issues/12952#change-61968

* Author: Kaneko Yuichiro
* Status: Closed
* Priority: Normal
* Assignee: Kenta Murata
* ruby -v: ruby 2.4.0preview3 (2016-11-07 trunk 56661) [x86_64-darwin14]
* Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
We can not call `BigDecimal("0.5").round(half: :up)`.
This prevents us from duck typing Float objects and BigDecimal objects.

```ruby
irb(main):001:0> require "bigdecimal"
=> true
irb(main):002:0> 0.5.round(half: :up)
=> 1
irb(main):003:0> BigDecimal("0.5").round(half: :up)
TypeError: no implicit conversion of Hash into Integer
	from (irb):3:in `round'
	from (irb):3
	from /Users/kaneko/.rbenv/versions/2.4.0-preview3/bin/irb:11:in `<main>'
irb(main):004:0> BigDecimal.ver
=> "1.1.0"
```



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>