Issue #11772 has been updated by Martin Drst.

Status changed from Open to Closed

As (implicitly) requested at [ruby-core:71843].

----------------------------------------
Bug #11772: Implicit conversion of Array in String interpolation does not call to_str
https://bugs.ruby-lang.org/issues/11772#change-55247

* Author: Daniel P. Clark
* Status: Closed
* Priority: Normal
* Assignee: 
* ruby -v: 
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
While providing an example in https://bugs.ruby-lang.org/issues/10930#note-7 I found that the implicit changing of an Array calls to_s without trying to_str first.  Isn't String interpolation "implicitly" converting items to strings?

~~~ruby
class Array
  def to_str
    "Hello from Array!"
  end
end

"#{[1,2,3,4,5]}"
# => [1, 2, 3, 4, 5]
~~~

I believe String interpolation should call `to_str` before `to_s`



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