Issue #14863 has been updated by nobu (Nobuyoshi Nakada). The result encoding is determined by the encodings of the array's contents, and the locale is not related to it. US-ASCII is the most "plain", so it is the fallback when the array has no contents. I don't think that it is consistent enough. ---------------------------------------- Bug #14863: Array#join with empty array returns empty string always in US-ASCII encoding https://bugs.ruby-lang.org/issues/14863#change-72613 * Author: xsimov (Xavier Sim) * Status: Feedback * Priority: Normal * Assignee: * Target version: * ruby -v: 2.4.2 * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- Calling ~~~ irb(main):001:0> [].join.encoding => #<Encoding:US-ASCII> ~~~ returns an empty string and that empty string is always in US-ASCII encoding. The expected result is that the returned empty string would be in UTF-8 since it seems to be the default for Ruby strings since 2.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>