On 2012-08-30 02:13, cal wrote:
Given this code for CTFE on a string array:

enum E {one, two}
enum string[] fields = [EnumMembers!E].to!(string[]);

string print(string[] fields)
{
     string s;
     foreach(string field; fields)
     {
         s ~= field.toUpper ~ ", ";
     }
     return s;
}

pragma(msg, print(["one", "two"]));
pragma(msg, print(fields));

I am trying to understand why the first pragma produces correct output
but the second one fails in std.string.toUpper (cannot interpret result
~= c at compile-time)?

It works for me. DMD 2.060 Mac OS X.

--
/Jacob Carlborg

Reply via email to