psychoticRabbit wrote:
So, strange problem below.
The commented-out line will not compile (if I un-comment it), unless I
either move std.stdio into main, or, move std.file out of main.
Whereas writeln works just fine as is.
---------------------
module test;
import std.stdio;
void main()
{
import std.file;
//write("hello");
writeln("hello again");
}
-----------------------
`std.file` has function named `write()` too. and local import completely
shadows global imports (i.e. it removes global imports from overload set
for the given scope), hence `std.stdio.write()` is not available there.
this is done by purpose, so your code won't accidentally use wrong
function. you can bring `std.stdio` functions back by adding local `import
std.stdio;`, for example.