// FILE: first.before.kt // "Opt in for 'Api' on containing class 'Main'" "true" // ERROR: This declaration needs opt-in. Its usage must be marked with '@foo.Api' or '@OptIn(foo.Api::class)' import foo.Bar class Main { 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' on containing class 'Main'" "true" // ERROR: This declaration needs opt-in. Its usage must be marked with '@foo.Api' or '@OptIn(foo.Api::class)' import foo.Api import foo.Bar @OptIn(Api::class) class Main { fun test() { Bar() } }