https://issues.dlang.org/show_bug.cgi?id=16085
--- Comment #7 from Andrei Alexandrescu <and...@erdani.com> --- (In reply to Martin Nowak from comment #6) > (In reply to Andrei Alexandrescu from comment #5) > > The issue is subtler than that (I'd agree the snippet above is a clear cut). > > The thing is Bucketizer _also_ defines its own reallocate: > > Ah, I was already wondering what was actually called now, but didn't have > more time to investigate. > > > struct Bucketizer > > { > > import whatever : reallocate; // <- private > > bool reallocate(ref void[] b, size_t size) // <- public > > { ... } > > > > The member "reallocate" should effectively hide the private import, yet the > > deprecation message still appears. > > It doesn't hide but overloads the selective import. Public/private overloads > should have public visibility but will be access checked after overload > resolution. > Seems like the overload code > https://github.com/dlang/dmd/blob/356353041c3d26d525e43f1ea6a9b36211ba523f/ > src/access.d#L481-L491 doesn't work properly. Great, thanks! --