FIR: add EXPERIMENTAL_API_USAGE reporting
This commit is contained in:
+1
-1
@@ -5,7 +5,7 @@
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
|
||||
|
||||
interface TestInterface<R> {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
public fun main(): kotlin.Unit
|
||||
|
||||
public interface TestInterface</*0*/ R> {
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> combined(
|
||||
check: () -> Unit,
|
||||
@BuilderInference block: TestInterface<R>.() -> Unit
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> combined(
|
||||
check: () -> Unit,
|
||||
@BuilderInference block: TestInterface<R>.() -> Unit
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> combined(/*0*/ check: () -> kotlin.Unit, /*1*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> combined(/*0*/ check: () -> kotlin.Unit, /*1*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
public fun test(): kotlin.Unit
|
||||
|
||||
public interface TestInterface</*0*/ R> {
|
||||
|
||||
Vendored
+2
-2
@@ -5,10 +5,10 @@
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build2(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
|
||||
|
||||
interface TestInterface<R> {
|
||||
|
||||
+2
-2
@@ -5,10 +5,10 @@
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build2(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
|
||||
|
||||
interface TestInterface<R> {
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
public fun </*0*/ K> capture(/*0*/ x: Inv<K>): K
|
||||
public fun </*0*/ K> captureIn(/*0*/ x: Inv<out K>): K
|
||||
public fun </*0*/ K> captureOut(/*0*/ x: Inv<out K>): K
|
||||
|
||||
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class In<in K>
|
||||
|
||||
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class In<in K>
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
public fun </*0*/ U> id(/*0*/ x: U): U?
|
||||
public fun </*0*/ E> select1(/*0*/ x: E, /*1*/ y: In<E>): E?
|
||||
public fun </*0*/ E> select2(/*0*/ x: E, /*1*/ y: In<E?>): E
|
||||
|
||||
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class Inv<K>
|
||||
|
||||
compiler/testData/diagnostics/tests/inference/builderInference/stubTypes/commonSuperTypeInvariant.kt
Vendored
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class Inv<K>
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
public fun </*0*/ U> id(/*0*/ x: U): U?
|
||||
public fun </*0*/ E> select1(/*0*/ x: E, /*1*/ y: Inv<E>): E?
|
||||
public fun </*0*/ E> select2(/*0*/ x: E, /*1*/ y: Inv<E?>): E
|
||||
|
||||
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class In<in K>
|
||||
|
||||
+2
-2
@@ -11,10 +11,10 @@ class Test {
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R2> build2(@BuilderInference block: TestInterface<R2>.() -> Unit): R2 = TODO()
|
||||
|
||||
class In<in K>
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R2> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R2>.() -> kotlin.Unit): R2
|
||||
public fun </*0*/ U> id(/*0*/ x: U): U
|
||||
public fun </*0*/ E> intersect(/*0*/ vararg x: In<E> /*kotlin.Array<out In<E>>*/): E
|
||||
public fun test(): kotlin.Unit
|
||||
|
||||
Vendored
+1
-1
@@ -10,7 +10,7 @@ interface TestInterface<R> {
|
||||
fun get(): R
|
||||
}
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
fun Any.test() {}
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ interface TestInterface<R> {
|
||||
fun get(): R
|
||||
}
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
fun Any.test() {}
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
public fun test(): kotlin.Unit
|
||||
public fun kotlin.Any.test(): kotlin.Unit
|
||||
public fun kotlin.Any?.test2(): kotlin.Unit
|
||||
|
||||
Vendored
+4
-4
@@ -10,16 +10,16 @@ interface TestInterface<R> {
|
||||
fun get(): R
|
||||
}
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : Any> build2(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : R2, R2 : Any> build3(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : R2, R2> build4(x: R2, @BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
fun test(a: String?) {
|
||||
|
||||
+4
-4
@@ -10,16 +10,16 @@ interface TestInterface<R> {
|
||||
fun get(): R
|
||||
}
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1> build(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : Any> build2(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : R2, R2 : Any> build3(@BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R1 : R2, R2> build4(x: R2, @BuilderInference block: TestInterface<R1>.() -> Unit): R1 = TODO()
|
||||
|
||||
fun test(a: String?) {
|
||||
|
||||
+4
-4
@@ -1,9 +1,9 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : kotlin.Any> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : R2, /*1*/ R2 : kotlin.Any> build3(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : R2, /*1*/ R2> build4(/*0*/ x: R2, /*1*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : kotlin.Any> build2(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : R2, /*1*/ R2 : kotlin.Any> build3(/*0*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R1 : R2, /*1*/ R2> build4(/*0*/ x: R2, /*1*/ @kotlin.BuilderInference block: TestInterface<R1>.() -> kotlin.Unit): R1
|
||||
public fun test(/*0*/ a: kotlin.String?): kotlin.Unit
|
||||
|
||||
public interface TestInterface</*0*/ R> {
|
||||
|
||||
Vendored
+1
-1
@@ -4,7 +4,7 @@
|
||||
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build(
|
||||
@BuilderInference block: TestInterface<R>.() -> Unit
|
||||
): R = TODO()
|
||||
|
||||
Vendored
+1
-1
@@ -4,7 +4,7 @@
|
||||
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
@UseExperimental(ExperimentalTypeInference::class)
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <R> build(
|
||||
@BuilderInference block: TestInterface<R>.() -> Unit
|
||||
): R = TODO()
|
||||
|
||||
Vendored
+1
-1
@@ -1,6 +1,6 @@
|
||||
package
|
||||
|
||||
@kotlin.UseExperimental(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
@kotlin.OptIn(markerClass = {kotlin.experimental.ExperimentalTypeInference::class}) public fun </*0*/ R> build(/*0*/ @kotlin.BuilderInference block: TestInterface<R>.() -> kotlin.Unit): R
|
||||
public fun </*0*/ U> id(/*0*/ x: U): U
|
||||
public fun test(): kotlin.Unit
|
||||
|
||||
|
||||
Reference in New Issue
Block a user