On Sunday, February 12, 2012 19:32:28 David Nadlinger wrote: > On 2/12/12 7:28 PM, Martin Nowak wrote: > > The shallow distinction of visibility vs. accessibility breaks the > > module system because > > one can't safely add a private symbol without possibly affecting every > > dependent module. > > Thus we're back at using underscore names to protect from that. > > Yes, and this is exactly why I argued to disregard invisible symbols > during overload resolution in the past. Walter seems to be firmly > convinced that the current solution is the right thing to do, but I > can't recall what his reasons were.
I'm not 100% sure that it's a good idea, depending on what the exact side effects are, but in principle, I'd love it if private symbols were invisible to other modules. Now, this does _not_ fly with private being overridable, as TDPL claims it should be. But I've already argued that that was a mistake due to the performance issues that it causes. I'm not sure what Walter's current plans with that are though. http://d.puremagic.com/issues/show_bug.cgi?id=4542 - Jonathan M Davis
