http://d.puremagic.com/issues/show_bug.cgi?id=7444
--- Comment #2 from Kenji Hara <[email protected]> 2012-02-09 05:33:52 PST --- (In reply to comment #1) > While I agree that the syntax should be enforced more strictly in general, I > still completely disagree with requiring [] on static array copies. Static > arrays are value types of fixed size, and should be treated as such. Requiring > [] is just wrong. > > void foo(int[4] x){} > void foo(int[] y){} > > void main(){ > int[4] x, y; > struct S{int[4] x;} > S a, b; > x = y; > a = b; // why should this work if the above does not? > foo(x); // copies, you want this to be an error > foo(x[]); // calls the other overload, does not copy > } I completely agree with Timon. When x and y are declared with same type T, x = y is identity assignment, and it is valid syntax even if T is static array type. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
