dmd 1.070 and 2.055 release
Jonathan M Davis
jmdavisProg at gmx.com
Thu Sep 8 11:49:55 PDT 2011
On Thursday, September 08, 2011 17:52:37 Andrej Mitrovic wrote:
> Ok cool, my DWin project successfully compiles. The WinAPI bindings
> are missing extern(Windows) specifiers for its function aliases and
> 2.055 seems to enforce this now, so that api will have to be updated.
> The only thing that's bothering me is the notices, there's just too
> many of them.
>
> For example this:
>
> import std.stdio;
> import std.path;
>
> void main()
> {
> writeln(curdir.rel2abs);
> }
>
> turns into this:
> Notice: As of Phobos 2.055, std.path.rel2abs has been scheduled for
> deprecation in February 2012. Please use absolutePath instead.
> Notice: As of Phobos 2.055, std.path.isabs has been scheduled for
> deprecation in February 2012. Please use isAbsolute instead.
> Notice: As of Phobos 2.055, std.path.getDrive has been scheduled for
> deprecation in February 2012. Please use driveName instead.
> Notice: As of Phobos 2.055, std.path.join has been scheduled for
> deprecation in February 2012. Please use buildPath instead.
> Notice: As of Phobos 2.055, std.path.rel2abs has been scheduled for
> deprecation in February 2012. Please use absolutePath instead.
> Notice: As of Phobos 2.055, std.path.isabs has been scheduled for
> deprecation in February 2012. Please use isAbsolute instead.
> Notice: As of Phobos 2.055, std.path.getDrive has been scheduled for
> deprecation in February 2012. Please use driveName instead.
> Notice: As of Phobos 2.055, std.path.join has been scheduled for
> deprecation in February 2012. Please use buildPath instead.
>
> That is just unacceptable imho.
At present, the only way to get rid of them is to fix your code so that it
doesn't use the functions which are scheduled for deprecation. Improvements to
the deprecated keyword have been in discussion to improve the situation. e.g.
https://github.com/D-Programming-Language/dmd/pull/345
It should only be reporting once per function though, so generally it
shouldn't be this bad. It's likely happening because a bunch of std.path
functions call each other, and they're all templated.
- Jonathan M Davis
More information about the Digitalmars-d-announce
mailing list