digitalmars.D - Deprecation bug?
- Jack Applegame (2/17) Nov 13 2020 If you change `enum a = A()` to `immutable a = A()`, the
- Jack Applegame (3/20) Nov 13 2020 But if you change `enum a = A()` to `static immutable a = A()`,
struct A { void opAssign(int v) const {} } struct B { enum a = A(); alias a this; } enum BB = B(); void main() { BB = 10; // Deprecation: Cannot use alias this to partially initialize variable B() of type B. Use a.opAssign }If you change `enum a = A()` to `immutable a = A()`, the deprecation disappears.
Nov 13 2020
On Friday, 13 November 2020 at 10:08:47 UTC, Jack Applegame wrote:But if you change `enum a = A()` to `static immutable a = A()`, the deprecation remains.struct A { void opAssign(int v) const {} } struct B { enum a = A(); alias a this; } enum BB = B(); void main() { BB = 10; // Deprecation: Cannot use alias this to partially initialize variable B() of type B. Use a.opAssign }If you change `enum a = A()` to `immutable a = A()`, the deprecation disappears.
Nov 13 2020