Actions
Bug #21450
closedInconsistent `upcase` between `String` and `Symbol`
Bug #21450:
Inconsistent `upcase` between `String` and `Symbol`
Description
Behavior for Symbol#upcase and String#upcase differs for i character if the :turkic option is present
I'd expect val.upcase(:turkic) behaves consistently for both cases:
However, when a non-ASCII character is present, then the case mapping on Symbol works the same way as with String:
Updated by Stranger6667 (Dmitry Dygalo) about 1 year ago
- Description updated (diff)
Updated by Stranger6667 (Dmitry Dygalo) about 1 year ago
- Description updated (diff)
Updated by nobu (Nobuyoshi Nakada) about 1 year ago
· Edited
- Status changed from Open to Closed
That difference is because of the difference of encodings.
The string "i" is UTF-8, even it contains ASCII 7bit characters only, because the source encoding is defaulted to UTF-8.
On the other hand, the encoding of :i, the symbol that contains ASCII 7bit characters only is US-ASCII.
The string in US-ASCII does the same behavior as the symbol.
Actions