Deprecation bug?

Jack Applegame japplegame at gmail.com
Fri Nov 13 10:13:01 UTC 2020


On Friday, 13 November 2020 at 10:08:47 UTC, Jack Applegame wrote:
>> 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.

But if you change `enum a = A()` to `static immutable a = A()`, 
the deprecation remains.


More information about the Digitalmars-d mailing list