D2 map trouble
Pelle
pelle.mansson at gmail.com
Wed Jul 28 07:51:15 PDT 2010
On 07/28/2010 12:57 AM, Nick Sabalausky wrote:
> Trying to convert some D1 code to D2:
>
> On 2.047, I'm trying to do this:
>
> import std.string;
> void foo(string str)
> {
> str =
> std.algorithm.map!(
> (char a) { return inPattern(a, [digits, letters])? a : '_'; }
> )(str);
> }
>
> And I'm getting:
>
> delegate std.algorithm.__dgliteral1 cannot access frame of function
> __dgliteral1
>
> What's going on? How do I do it right? I figure I probably have some sort of
> problem with strings being immutable(char)[] instead of char[], but it
> doesn't look like that's the issue it's complaining about. Also, in this
> particular case, I'm not concerned about multi-unit UTF-8 characters.
>
>
This is a compiler bug. Easy workaround:
auto fn = (char a) { ... };
str = map!fn(str);
More information about the Digitalmars-d-learn
mailing list