dmd 1.069 and 2.054 release

Nick Sabalausky a at a.a
Mon Jul 11 09:34:10 PDT 2011


"Jonathan M Davis" <jmdavisProg at gmx.com> wrote in message 
news:mailman.1522.1310360091.14074.digitalmars-d-announce at puremagic.com...
> On Monday 11 July 2011 14:26:32 Daniel Murphy wrote:
>>
>> Would the following cover all the common use cases? (Phobos seems to be 
>> the
>> biggest user of deprecated so far)
>>
>> deprecated("message") int a;
>> deprecated("message", warn) int b;
>>
>> With deprecated(warn) messages only being displayed with warnings 
>> enabled.
>
> No. That's not quite right. If something is actually deprecated, -d is
> required to compile using it. Being able to have a message with it - e.g.
> deprecated("message") - would be very useful, because it could tell you 
> what
> you're supposed to use instead (or that nothing is replacing it if that's 
> the
> case). Error vs warning has nothing to do with it. Now, it could be that
> compiling with -w would result in the message being printed even if you
> compiled with -d, but that's debatable.
>
> In the case of something which is scheduled for deprecation, the code 
> should
> compile regardless. A message would print if that symbol were used, but 
> beyond
> that, nothing happens. That _could_ be made so that it only prints when 
> you
> compile with -w, and if it's classified as a warning, then that would make
> sense, except that it shouldn't stop compilation even if compiling 
> with -w, so
> it can't really follow what warnings normally do with -w. So, how it 
> should
> function with regards to -w is debatable.
>

Despite the confusing non-standard descriptions in --help, -w is the "Treat 
warnings as errors" setting, so it *should* stop compilation - that's the 
whole point of -w. The proper "Turn warnings on" setting is -wi, not -w.




More information about the Digitalmars-d-announce mailing list