private selective import + overload = breaks accessibility rules

rumbu rumbu at rumbu.ro
Tue Jan 16 19:05:51 UTC 2018


On Tuesday, 16 January 2018 at 18:32:46 UTC, H. S. Teoh wrote:

> Which version of the compiler is this?  I'm pretty sure the 
> std.math.isNaN imported by module a should not be visible in 
> module b. The latest compiler should emit a deprecation warning 
> for this.

2.078, but also 2.077. Deprecation is emitted only if there is no 
overload;

>
> Of course, it's possible that having a public symbol in module 
> a that overloads an imported symbol may have triggered a buggy 
> corner case in the compiler.  If so, a bug should be filed.

Done: https://issues.dlang.org/show_bug.cgi?id=18243




More information about the Digitalmars-d-learn mailing list