Summary: Function Literal Templates Don't Work when Nested in
           Product: D
           Version: D2
          Platform: Other
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD

--- Comment #0 from 2011-05-31 07:36:30 PDT ---
The following piece of code, which finds the length of the longest line in a

    pipe!(readText, splitlines, map!((a) { return a.length; }),

fails with:

    Error: expression template map(Range) if (isInputRange!(Unqual!(Range))) is
not a valid template value argument

If you try to get around it by saying

    pipe!(readText, splitlines, map!(delegate size_t(string a) { return
a.length; }), reduce!max)("Temp.d");

you then get:

    Error: delegate std.algorithm.__dgliteral1 cannot access frame of function

and saying "function" instead of "delegate" doesn't change anything.

You can get around it with using a string instead of a function literal as the
template argument, but that still doesn't really solve the issue.

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to