// SKIP_TXT // FILE: a/A.java package a; public interface A { B b(); } // FILE: a/B.java package a; public interface B { void bar(); } // FILE: a/AImpl.java package a; public class AImpl implements A { @Override public BImpl b() { return new BImpl(); } } class BImpl implements B { @Override public void bar() {} } // FILE: main.kt import a.A import a.AImpl fun test1(a: A) { if (a is AImpl) { (a as A).b().bar() // OK a.b().bar() } } fun test2(aImpl: AImpl) { val a: A = aImpl (a as A).b().bar() // OK a.b().bar() // Works at FE1.0, fails at FIR }