<div dir="ltr">This behavior is intended change.<div><br></div><div style>From 2.063, UFCS name lookup finds *most inner* imported name.</div><div style><br></div><div style>module test;</div><div style>void map(alias func, T)(T){}  // dummy</div>
<div style>void main() {</div><div style>    import std.algorithm;</div><div style>    auto r = [1,2,3].map!(a=>a*2);    // hit std.algorithm.map instead of test.map</div><div style>}</div><div style><br></div><div style>
As already Walter says, the precedence is now changed as same as normal name lookup rule.</div><div style><br></div><div style>Kenji Hara</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/5/19 Andrej Mitrovic <span dir="ltr"><<a href="mailto:andrej.mitrovich@gmail.com" target="_blank">andrej.mitrovich@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 5/18/13, Walter Bright <<a href="mailto:walter@digitalmars.com">walter@digitalmars.com</a>> wrote:<br>

> I don't agree. A base class's scope must override the top level module<br>
> scope.<br>
><br>
> Also, a base class can always override what a derived class does. This is<br>
> not hijacking.<br>
<br>
</div>Don't you see that this change in behavior is going to surprise a lot<br>
of people? It's intuitive to me that this is going to cause trouble<br>
down the road. A base class could be in another file, in another<br>
library, and if the library writer decides to introduce a scoped<br>
import, suddenly the user's code might end up calling the wrong<br>
function (if the type signatures are the same the user will have *no<br>
idea* what happened). This is the definition of function hijacking.<br>
<br>
If it is a feature, it is not properly documented, and I can't tell<br>
which pull request changed the behavior so I don't know whether to put<br>
it in the changelog or not.<br>
<br>
Kenji, maybe you know?<br>
<div class="HOEnZb"><div class="h5">_______________________________________________<br>
dmd-beta mailing list<br>
<a href="mailto:dmd-beta@puremagic.com">dmd-beta@puremagic.com</a><br>
<a href="http://lists.puremagic.com/mailman/listinfo/dmd-beta" target="_blank">http://lists.puremagic.com/mailman/listinfo/dmd-beta</a><br>
</div></div></blockquote></div><br></div>