On 03/12/2013 10:47 PM, Zach the Mystic wrote:
void func(string[2] a) {}void func2(T...)(T args) { static assert(is(typeof(args[0]) == string[2])); } void func3(T...)(T args) { static assert(args[0].length == 2); } func(["",""]); // Okay func2(["",""]); // Error: (is(string[] == string[2LU])) is false func3(["",""]); // Error: _param_0 cannot be read at compile time Is this the intended design?
Yes.
Is there a workaround which allows me to ensure that the parameter is exactly 2 length?
http://d.puremagic.com/issues/show_bug.cgi?id=9712 http://d.puremagic.com/issues/show_bug.cgi?id=9711
