October 10, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #20 from Max Samukha <samukha@voliacable.com> 2013-10-10 07:07:59 PDT ---
I see there was a discussion in bug 9665. Kenji, if you are fixing this, please don't forget about postblit, which is a constructor and should have similar semantics. That is:

struct S {
    @disable this();

    this(int x) {
    }

    static int postblit;
    this(this) {
        postblit = true;
    }

    static int assigned;
    void opAssign(S s) {
        assigned = true;
    }
}

class A {
    S s;

    this() {
        auto s1 = S(1);
        s = s1;
        assert(!S.assigned);
        assert(S.postblit);
    }
}

void main() {
    auto a = new A;
}


Copy-construction should be performed, not assignment.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 10, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #21 from Max Samukha <samukha@voliacable.com> 2013-10-10 07:10:42 PDT ---
(In reply to comment #20)
"I see there was a discussion in bug 9665." - ignore this sentence.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665


Kenji Hara <k.hara.pg@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull, rejects-valid
             Blocks|                            |11186, 11246, 10357


--- Comment #22 from Kenji Hara <k.hara.pg@gmail.com> 2013-10-14 05:58:29 PDT ---
https://github.com/D-Programming-Language/dmd/pull/2665 https://github.com/D-Programming-Language/phobos/pull/1637

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #23 from github-bugzilla@puremagic.com 2013-10-14 15:19:11 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/644e11ea46ac671b4a1a34a31ef5e72a6f89a2d2
fix Issue 9665 - Structure constant members can not be initialized if have
opAssign

https://github.com/D-Programming-Language/phobos/commit/5f725db1141d98c67ee3515f4edb7b43692173d7 Merge pull request #1637 from 9rnsr/fix9665

Supplemental fix for issue 9665 - Structure constant members can not be initialized if have opAssign

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #24 from github-bugzilla@puremagic.com 2013-10-14 15:20:11 PDT ---
Commit pushed to 2.064 at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/f5606620c5f106694a6c1ec082587d8ffba1a6c7 Merge pull request #1637 from 9rnsr/fix9665

Supplemental fix for issue 9665 - Structure constant members can not be initialized if have opAssign

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 15, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #25 from github-bugzilla@puremagic.com 2013-10-14 20:51:16 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/f8386c7eeb2518779e42e753507538188c1e3be5
fix Issue 9665 - Structure constant members can not be initialized if have
opAssign

- Change the first field assignment inside constructor to true initialization. - Disable multiple initialization of non-mutable field, if it is once initialized.

https://github.com/D-Programming-Language/dmd/commit/84ee9522f470cdb90031c4a8542c32e753d1462c Merge pull request #2665 from 9rnsr/fix9665

Issue 9665 - Structure constant members can not be initialized if have opAssign

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 15, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #26 from github-bugzilla@puremagic.com 2013-10-14 20:51:57 PDT ---
Commit pushed to 2.064 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/44d568a7f83a43d6bbd31cbcfcf194da39a3beb7 Merge pull request #2665 from 9rnsr/fix9665

Issue 9665 - Structure constant members can not be initialized if have opAssign

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 15, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665


Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |bugzilla@digitalmars.com
         Resolution|                            |FIXED


-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 20, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665


Kenji Hara <k.hara.pg@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |acehreli@yahoo.com


--- Comment #27 from Kenji Hara <k.hara.pg@gmail.com> 2013-10-20 02:32:33 PDT ---
*** Issue 9732 has been marked as a duplicate of this issue. ***

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
November 04, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9665



--- Comment #28 from github-bugzilla@puremagic.com 2013-11-03 20:47:08 PST ---
Commits pushed to master at https://github.com/D-Programming-Language/dlang.org

https://github.com/D-Programming-Language/dlang.org/commit/76bf0a581313aa6f2702f23a577f28d32a5d385f
fix Issue 9665 - Structure constant members can not be initialized if have
opAssign

Describe about field initialization behavior.

https://github.com/D-Programming-Language/dlang.org/commit/0af070ef719ef65ddd325dfb5d68b5fd987ce6aa Merge pull request #404 from 9rnsr/fix9665

Issue 9665 - Structure constant members can not be initialized if have opAssign

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