On 5/11/16 10:11 AM, Chris wrote:
I'm updating my code to 2.071.0 at the moment. Naturally, I get a lot of
warnings like

`module std.uni is not accessible here, perhaps add 'static import
std.uni;'`


Will `static import` bloat my exe or simply access the members I use?

No. static import just defines what symbols are accessible in what contexts.

The (likely) reason you are getting this is because you are importing a module with a selective import:

import std.uni : foo;

And then using:

std.uni.bar();

What the compiler is saying is that the fully qualified names are no longer going to be imported with selective imports.

In order to "fix" this, you do:

import std.uni : foo;
static import std.uni;

Note that another option is:

import std.uni : foo, bar;

and then changing the fully qualified name to just bar.

Or you could use renamed imports.

See this article for some explanation: http://www.schveiguy.com/blog/2016/03/import-changes-in-d-2-071/

-Steve

Reply via email to