Re: Array copy warning

2013-10-15 Thread bearophile
Benjamin Thaut: I'm just in the progress of upgrading to dmd 2.063 and I now get the following warnings in my code: Warning: explicit element-wise assignment I am having problems with code like this, that used to work: import std.algorithm: reduce; struct Foo { int x, y; } void main() {

Re: Array copy warning

2013-10-13 Thread Benjamin Thaut
Am 13.10.2013 15:10, schrieb Benjamin Thaut: I'm just in the progress of upgrading to dmd 2.063 and I now get the following warnings in my code: Warning: explicit element-wise assignment mem[cast(uint)0..this.length()] = (this.opSlice())[] is better than mem[cast(uint)0..this.length()] =

Re: Array copy warning

2013-10-13 Thread Mike Wey
On 10/13/2013 03:15 PM, Benjamin Thaut wrote: Am 13.10.2013 15:10, schrieb Benjamin Thaut: I'm just in the progress of upgrading to dmd 2.063 and I now get the following warnings in my code: Warning: explicit element-wise assignment mem[cast(uint)0..this.length()] = (this.opSlice())[] is

Re: Array copy warning

2013-10-13 Thread Benjamin Thaut
Am 13.10.2013 17:22, schrieb Mike Wey: With 2.063 and up when assigning to a slice you'll also need to use the slice operator on the right of the assignment. This is also true for regular arrays. The code that generates the warning looks like this: mem[0..this.length] = this[]; So I assume