https://issues.dlang.org/show_bug.cgi?id=12796
monarchdo...@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #3 from monarchdo...@gmail.com --- (In reply to Peter Alexander from comment #2) > Isn't that correct output? char[64] is not a range, so it shouldn't compile > and you should need to write w1[].toLower. Absolutly. > Either way, you certainly can't put the result back into a char[64] because > non-ASCII casing changes may alter length. That's another issue I guess. > I propose this is closed. It wasn't quite correct though in the sense that toLower failed to compile "internally". I fixed it when I submitted: https://github.com/D-Programming-Language/phobos/pull/2203 So now it correctly produces: main.d(27): Error: None of the overloads of 'toLower' are callable using argument types (char[64]), candidates are: std/uni.d(7989): std.uni.toLower(dchar c) std/uni.d(8382): std.uni.toLower(string s) std/uni.d(8384): std.uni.toLower(immutable(wchar)[] s) std/uni.d(8386): std.uni.toLower(immutable(dchar)[] s) So *now* it is fixed, yes. Closing. --