[Issue 16104] Unions should allow fields with destructors, postblits, and invariants

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Sun Jul 2 06:24:08 PDT 2017


https://issues.dlang.org/show_bug.cgi?id=16104

Vladimir Panteleev <dlang-bugzilla at thecybershadow.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |dlang-bugzilla at thecybershad
                   |                            |ow.net
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=2665,
                   |                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=4144
         Resolution|---                         |WORKSFORME

--- Comment #5 from Vladimir Panteleev <dlang-bugzilla at thecybershadow.net> ---
I believe this was fixed in https://github.com/dlang/dmd/pull/5830.

BTW, the example in the description has a non-trivial history:

.. before 2.063 : test.d(24): Error: mutable method test.A1.opAssign is not
callable using a immutable object

Fixed  by: https://github.com/dlang/dmd/pull/2665 (issue 9665)

2.064 ... 2.066 : works

Broken by: https://github.com/dlang/dmd/pull/4144 (issue 4421)

2.067 ... 2.071 : test.d(12): Error: struct test.B destructors, postblits and
invariants are not allowed in overlapping fields a1 and a2

Fixed  by: https://github.com/dlang/dmd/pull/5830

2.072 ... now   : works

--


More information about the Digitalmars-d-bugs mailing list