[Issue 12796] std.string toLower/toUpper array conversion.

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Wed Jun 11 12:51:17 PDT 2014


https://issues.dlang.org/show_bug.cgi?id=12796

Peter Alexander <peter.alexander.au at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |peter.alexander.au at gmail.co
                   |                            |m

--- Comment #2 from Peter Alexander <peter.alexander.au at gmail.com> ---
(In reply to monarchdodra from comment #1)
> FYI, the ice issue is 12769 and fixed.
> https://issues.dlang.org/show_bug.cgi?id=12769
> 
> HEAD currently produces:
> 
> std/uni.d(8042): Error: template std.array.appender cannot deduce function
> from argument types !(char[64])(char[]), candidates are:
> std/array.d(2707):        std.array.appender(A : E[], E)()
> std/array.d(2712):        std.array.appender(A : E[], E)(A array)
> std/array.d(3025):        std.array.appender(A : E[]*, E)(A array)
> std/uni.d(8377): Error: template instance std.uni.toCase!(toLowerIndex,
> 1043, toLowerTab, char[64]) error instantiating
> main.d(11):        instantiated from here: toLower!(char[64])

Isn't that correct output? char[64] is not a range, so it shouldn't compile and
you should need to write w1[].toLower.

Either way, you certainly can't put the result back into a char[64] because
non-ASCII casing changes may alter length.

I propose this is closed.

--


More information about the Digitalmars-d-bugs mailing list