Le 06/11/2012 02:36, Andrei Alexandrescu a écrit :
On 11/6/12 3:06 AM, H. S. Teoh wrote:
I've already given a number of
non-trivial examples of transient forward ranges, and apparently
deadalnix has also encountered the same issue.

I'd like to build more of this argument. I pointed out that your range
is actually defining .dup, not .save.

Yes my code can also fall in the .dup stuff.

If we actually make that difference, our case is moot, but a hell lot of code is broken as well.

For instance, the way map is defined is highly incorrect as each call to .front can pop a newly generated element as well, and I'm pretty that isn't the only one.

We are here back to equality vs identity, and it seems D also have some stuff to fix in that regard (notably struct and AA). Discussing that here only make the problem more confuse and is not helping as long as this question is open in D.

Reply via email to