Re: DMD1 function template broken or did I f.u.?

2010-08-24 Thread Steven Schveighoffer
On Tue, 24 Aug 2010 11:18:35 -0400, 0ffh wrote: Hi, all! Try this: ---< snip >--- void remove(T)(out T[] array,T element) { int r=0,w=0; while (r--- I get the following output: direct before : [1,3,2,2,1,3,1,1,2] after : [1,3,1,3,1,1] template before : [1,3,2,2,1,3,1,1,2

Re: DMD1 function template broken or did I f.u.?

2010-08-24 Thread Simen kjaeraas
0ffh wrote: So, my question is: Huh? The answer to this should for symmetry be: Duh! However, it is not quite that simple. void remove(T)(out T[] array,T element) { This is the line that gives you problems. You are expecting 'out' to work like 'ref', which it doesn't. From [1]: "out para