// FILE: first.before.kt // "Opt in for 'Api' in containing file 'first.before.kt'" "true" // ERROR: This declaration needs opt-in. Its usage must be marked with '@foo.Api' or '@OptIn(foo.Api::class)' import foo.Bar fun test(){ Bar() } // FILE: foo/Api.java // WITH_STDLIB package foo; import kotlin.RequiresOptIn; import java.lang.annotation.ElementType; import java.lang.annotation.Target; @RequiresOptIn @Target(ElementType.TYPE) public @interface Api{} // FILE: foo/Bar.java package foo; @Api public class Bar {} // FILE: first.after.kt // "Opt in for 'Api' in containing file 'first.before.kt'" "true" // ERROR: This declaration needs opt-in. Its usage must be marked with '@foo.Api' or '@OptIn(foo.Api::class)' @file:OptIn(Api::class) import foo.Api import foo.Bar fun test(){ Bar() }