[dmd-beta] D2 2.058 beta

Sönke Ludwig ludwig at informatik.uni-luebeck.de
Thu Feb 9 11:37:36 PST 2012


Am 09.02.2012 17:27, schrieb Walter Bright:
>
>
> On 2/9/2012 1:48 AM, Sönke Ludwig wrote:
>>
>> Another thing is that while private selective imports are not public
>> anymore, private renamed imports now conflict in other modules in
>> this scenario:
>> ---
>> module a;
>> import std = b;
>> module b;
>> import a;
>> void f(){ std.stdio.writefln("X"); } // Error: std at  conflicts with
>> std at a.d(2)
>> ---
>
> I think it should conflict - can't have std as both an alias and a
> package.
Sorry, the example was incomplete and maybe a bit misleading:
---
module a;
private import std = b;
---
---
module b;
private import std.stdio;
void f(){ std.stdio.writefln("X"); } // conflict
---
So here the "b" import and its alias "std" in a is, or should be, 
private, as well as the std.stdio import in module b. I don't see why 
two private import statements should influence each other in an ideal world.

>
>>
>> I'm also getting an error in cgcs.c line 354 on a "piece" of code
>> that previously errored on line 162/cgcs.c (the fixed bug 6177). I
>> will run dustmite on it and see where it comes from. Not sure if the
>> two are related to the same root cause or if this is a regresseion.
>>
>
Turns out it is no regression (occurs at least in 2.057).
http://d.puremagic.com/issues/show_bug.cgi?id=7474



More information about the dmd-beta mailing list