a.d module a; class A { private d ( ) { } } b.d module b; import a; class B : A { void x ( void delegate ( ) dg ) { dg(); } void f ( ) { x(&super.d); // Expected to not be allowed to access private method of A } }
This was fixed by https://github.com/dlang/dmd/pull/5472. The compiler now produces: b.d(10): Deprecation: a.A.d is not visible from module b