http://d.puremagic.com/issues/show_bug.cgi?id=5705


kenn...@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Swapping identical tuple    |Swapping identical struct
                   |causes "overlapping array   |with hasElaborateAssign
                   |copy" exception.            |causes "overlapping array
                   |                            |copy" exception.


--- Comment #3 from kenn...@gmail.com 2011-04-18 12:41:34 PDT ---
The the reason is Tuple has an opAssign. The same reason goes for SysTime
(issue 5853). Generalized test case:

-------------------------------
import std.algorithm : swap;

struct X {
    int x;
    void opAssign(X z) {
        x = z.x;
    }
}

void main() {
    X y;
    swap(y, y);
}
-------------------------------

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------

Reply via email to