This may sound really stupid. but I've got a strange problem with the D programming language. When I try to create a new array like this:
import std.stdio;
void main()
{
char[] variable = "value";
writefln(variable);
}
The DMD compiler always gives me this error:
test.d(5): Error: cannot implicitly convert expression ("value") of type invariant(char[5u]) to char[]
Any idea why? I'm using the 2.014 alpha (available here) for Ubuntu.
I was searching around the arrays section of the guide, this may help:
char[] str1 = "abc"; // error, "abc" is not mutable
char[] str2 = "abc".dup; // ok, make mutable copy
invariant(char)[] str3 = "abc"; // ok
invariant(char)[] str4 = str1; // error, str4 is not mutable
invariant(char)[] str5 = str1.idup; // ok, make invariant copy
From here.