WTF: dmd 2.066 vs. dmd 2.067 really dangerous code breakage

Dicebot via Digitalmars-d digitalmars-d at puremagic.com
Wed Apr 22 04:44:39 PDT 2015


On Wednesday, 22 April 2015 at 11:41:53 UTC, Daniel Kozak wrote:
> On Wednesday, 22 April 2015 at 11:36:35 UTC, Dicebot wrote:
>> On Wednesday, 22 April 2015 at 11:28:44 UTC, Daniel Kozak 
>> wrote:
>>> This code compile fine under both versions:
>>>
>>> dmd (2.066, -debug -d):
>>
>> -d is your enemy, If you remove that, there will be a clear 
>> warning "Deprecation: variable XXX.S.FLAG_ON immutable field 
>> with initializer should be static, __gshared, or an enum". You 
>> decided to ignore and hide it, why the surprise about the 
>> breakage?
>
> I decided to ignore deprication messages, but I never expect it 
> could lead to change semantics. I would expect compile breakage 
> on 2.067 and after some releases maybe change of semantics. 
> Btw. on 2.067 its compile even without -d parameter

It should have been an error in 2.066 according to plan published 
in 2.065
If it didn't happen, shifting the schedule for one release may be 
justified.


More information about the Digitalmars-d mailing list