[FIR] Rewrite redeclaration checks
#KT-60124 Fixed #KT-60573 Fixed
This commit is contained in:
committed by
Space Team
parent
b56f84b533
commit
951b299268
compiler/testData/diagnostics/tests/extensions/contextReceivers/conflictingWithDifferentOrder.fir.kt
Vendored
+4
-4
@@ -3,11 +3,11 @@
|
||||
interface A
|
||||
interface B
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>context(A, B)
|
||||
fun f(): Unit<!> = TODO()
|
||||
context(A, B)
|
||||
fun f(): Unit = TODO()
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>context(B, A)
|
||||
fun f(): Unit<!> = TODO()
|
||||
context(B, A)
|
||||
fun f(): Unit = TODO()
|
||||
|
||||
fun test(a: A, b: B) {
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>with<!>(a) {
|
||||
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
// !LANGUAGE: +ContextReceivers
|
||||
|
||||
interface A
|
||||
interface B
|
||||
interface C
|
||||
interface D
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>context(A, B)
|
||||
fun f(): Unit<!> = TODO()
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>context(C, D)
|
||||
fun f(): Unit<!> = TODO()
|
||||
|
||||
fun test(a: A, b: B) {
|
||||
with(a) {
|
||||
with(b) {
|
||||
f()
|
||||
}
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +ContextReceivers
|
||||
|
||||
interface A
|
||||
|
||||
+2
-2
@@ -4,7 +4,7 @@ class A<T>(val a: T)
|
||||
class B(val b: Any)
|
||||
class C(val c: Any)
|
||||
|
||||
<!MUST_BE_INITIALIZED!>context(A<String>, B) var <!REDECLARATION!>p<!>: Int<!>
|
||||
<!MUST_BE_INITIALIZED!>context(A<String>, B) var p: Int<!>
|
||||
get() {
|
||||
this@A.a.length
|
||||
this@B.b
|
||||
@@ -18,7 +18,7 @@ class C(val c: Any)
|
||||
field = value
|
||||
}
|
||||
|
||||
<!MUST_BE_INITIALIZED!>context(A<Int>, A<String>, B) var <!REDECLARATION!>p<!>: Int<!>
|
||||
<!MUST_BE_INITIALIZED!>context(A<Int>, A<String>, B) var p: Int<!>
|
||||
get() {
|
||||
this@A.a.<!UNRESOLVED_REFERENCE!>toDouble<!>()
|
||||
this@A.a.length
|
||||
|
||||
+7
-7
@@ -1,8 +1,8 @@
|
||||
fun <T1> test1(x: List<T1>) = x
|
||||
fun <T2> test1(x: List<T2>) = x
|
||||
<!CONFLICTING_OVERLOADS!>fun <T1> test1(x: List<T1>)<!> = x
|
||||
<!CONFLICTING_OVERLOADS!>fun <T2> test1(x: List<T2>)<!> = x
|
||||
|
||||
fun <T1> List<T1>.test1a() {}
|
||||
fun <T2> List<T2>.test1a() {}
|
||||
<!CONFLICTING_OVERLOADS!>fun <T1> List<T1>.test1a()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun <T2> List<T2>.test1a()<!> {}
|
||||
|
||||
fun <T> test2(x: List<T>) = x
|
||||
fun test2(x: List<String>) = x
|
||||
@@ -24,11 +24,11 @@ fun <K, V> Map<K, V>.test4a() {}
|
||||
|
||||
class Inv<T>
|
||||
|
||||
fun <T> test5(x: Inv<T>) = x
|
||||
fun <T> test5(x: Inv<out T>) = x
|
||||
<!CONFLICTING_OVERLOADS!>fun <T> test5(x: Inv<T>)<!> = x
|
||||
<!CONFLICTING_OVERLOADS!>fun <T> test5(x: Inv<out T>)<!> = x
|
||||
|
||||
fun <T> test6(x: Array<T>) = x
|
||||
fun test6(x: Array<String>) = x
|
||||
|
||||
fun <T> test7(x: Inv<T>) = x
|
||||
fun <T> Inv<T>.test7() {}
|
||||
fun <T> Inv<T>.test7() {}
|
||||
|
||||
+104
-2
@@ -1,5 +1,107 @@
|
||||
// !LANGUAGE: +ContextReceivers
|
||||
// FIR_IDENTICAL
|
||||
package foo
|
||||
|
||||
val Int.<!REDECLARATION!>foo<!>: Int get() = 2
|
||||
val Int.<!REDECLARATION!>foo<!>: Int get() = 3
|
||||
val Int.<!REDECLARATION!>simple<!>: Int get() = 0
|
||||
val Int.<!REDECLARATION!>simple<!>: Int get() = 0
|
||||
|
||||
val Int.differentTypes: Int get() = 0
|
||||
val String.differentTypes: Int get() = 0
|
||||
|
||||
val <T> T.<!REDECLARATION!>sameNamedGenerics<!>: Int get() = 0
|
||||
val <T> T.<!REDECLARATION!>sameNamedGenerics<!>: Int get() = 0
|
||||
|
||||
val <T> T.<!REDECLARATION!>differentlyNamedGenerics<!>: Int get() = 0
|
||||
val <R> R.<!REDECLARATION!>differentlyNamedGenerics<!>: Int get() = 0
|
||||
|
||||
val <T> T.sameNamedGenericsDifferentBounds: Int get() = 0
|
||||
val <T : Any> T.sameNamedGenericsDifferentBounds: String get() = ""
|
||||
|
||||
val <T> T.differentlyNamedGenericsDifferentBounds: Int get() = 0
|
||||
val <R : Any> R.differentlyNamedGenericsDifferentBounds: String get() = ""
|
||||
|
||||
val <T> List<T>.sameNamedGenericsListDifferentBounds: Int get() = 0
|
||||
val <T : Any> List<T>.sameNamedGenericsListDifferentBounds: String get() = ""
|
||||
|
||||
val <T> List<T>.differentlyNamedGenericsListDifferentBounds: Int get() = 0
|
||||
val <R : Any> List<R>.differentlyNamedGenericsListDifferentBounds: String get() = ""
|
||||
|
||||
context(Int) val <!REDECLARATION!>simpleContextReceivers<!>: Int get() = 0
|
||||
context(Int) val <!REDECLARATION!>simpleContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(Int) val differentTypesContextReceivers: Int get() = 0
|
||||
context(String) val differentTypesContextReceivers: Int get() = 0
|
||||
|
||||
context(T) val <T> <!REDECLARATION!>sameNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
context(T) val <T> <!REDECLARATION!>sameNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(T) val <T> <!REDECLARATION!>differentlyNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
context(R) val <R> <!REDECLARATION!>differentlyNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(T) val <T> sameNamedGenericsDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(T) val <T : Any> sameNamedGenericsDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(T) val <T> differentlyNamedGenericsDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(R) val <R : Any> differentlyNamedGenericsDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(List<T>) val <T> sameNamedGenericsListDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(List<T>) val <T : Any> sameNamedGenericsListDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(List<T>) val <T> differentlyNamedGenericsListDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(List<R>) val <R : Any> differentlyNamedGenericsListDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
val Int.extensionVsContextReceiver: Int get() = 0
|
||||
context(Int) val extensionVsContextReceiver: String get() = ""
|
||||
|
||||
class C {
|
||||
val Int.<!REDECLARATION!>simple<!>: Int get() = 0
|
||||
val Int.<!REDECLARATION!>simple<!>: Int get() = 0
|
||||
|
||||
val Int.differentTypes: Int get() = 0
|
||||
val String.differentTypes: Int get() = 0
|
||||
|
||||
val <T> T.<!REDECLARATION!>sameNamedGenerics<!>: Int get() = 0
|
||||
val <T> T.<!REDECLARATION!>sameNamedGenerics<!>: Int get() = 0
|
||||
|
||||
val <T> T.<!REDECLARATION!>differentlyNamedGenerics<!>: Int get() = 0
|
||||
val <R> R.<!REDECLARATION!>differentlyNamedGenerics<!>: Int get() = 0
|
||||
|
||||
val <T> T.sameNamedGenericsDifferentBounds: Int get() = 0
|
||||
val <T : Any> T.sameNamedGenericsDifferentBounds: String get() = ""
|
||||
|
||||
val <T> T.differentlyNamedGenericsDifferentBounds: Int get() = 0
|
||||
val <R : Any> R.differentlyNamedGenericsDifferentBounds: String get() = ""
|
||||
|
||||
val <T> List<T>.sameNamedGenericsListDifferentBounds: Int get() = 0
|
||||
val <T : Any> List<T>.sameNamedGenericsListDifferentBounds: String get() = ""
|
||||
|
||||
val <T> List<T>.differentlyNamedGenericsListDifferentBounds: Int get() = 0
|
||||
val <R : Any> List<R>.differentlyNamedGenericsListDifferentBounds: String get() = ""
|
||||
|
||||
context(Int) val <!REDECLARATION!>simpleContextReceivers<!>: Int get() = 0
|
||||
context(Int) val <!REDECLARATION!>simpleContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(Int) val differentTypesContextReceivers: Int get() = 0
|
||||
context(String) val differentTypesContextReceivers: Int get() = 0
|
||||
|
||||
context(T) val <T> <!REDECLARATION!>sameNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
context(T) val <T> <!REDECLARATION!>sameNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(T) val <T> <!REDECLARATION!>differentlyNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
context(R) val <R> <!REDECLARATION!>differentlyNamedGenericsContextReceivers<!>: Int get() = 0
|
||||
|
||||
context(T) val <T> sameNamedGenericsDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(T) val <T : Any> sameNamedGenericsDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(T) val <T> differentlyNamedGenericsDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(R) val <R : Any> differentlyNamedGenericsDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(List<T>) val <T> sameNamedGenericsListDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(List<T>) val <T : Any> sameNamedGenericsListDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
context(List<T>) val <T> differentlyNamedGenericsListDifferentBoundsContextReceivers: Int get() = 0
|
||||
context(List<R>) val <R : Any> differentlyNamedGenericsListDifferentBoundsContextReceivers: String get() = ""
|
||||
|
||||
val Int.extensionVsContextReceiver: Int get() = 0
|
||||
context(Int) val extensionVsContextReceiver: String get() = ""
|
||||
}
|
||||
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
package
|
||||
|
||||
package foo {
|
||||
public val kotlin.Int.foo: kotlin.Int
|
||||
public val kotlin.Int.foo: kotlin.Int
|
||||
}
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// FIR_IDENTICAL
|
||||
// FILE: a.kt
|
||||
fun main() {}
|
||||
|
||||
// FILE: b.kt
|
||||
fun main() {}
|
||||
-4
@@ -1,4 +0,0 @@
|
||||
package
|
||||
|
||||
public fun main(): kotlin.Unit
|
||||
public fun main(): kotlin.Unit
|
||||
@@ -0,0 +1,112 @@
|
||||
// FIR_IDENTICAL
|
||||
// ### INVALID
|
||||
|
||||
// FILE: invalid_noargs.kt
|
||||
package invalid1
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array.kt
|
||||
package invalid2
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg.kt
|
||||
package invalid3
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias.kt
|
||||
package invalid4
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<S>)<!> {}
|
||||
|
||||
// FILE: invalid_noargs_suspend.kt
|
||||
package invalid5
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array_suspend.kt
|
||||
package invalid6
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg_suspend.kt
|
||||
package invalid7
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias_suspend.kt
|
||||
package invalid8
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<S>)<!> {}
|
||||
|
||||
// ### VALID
|
||||
|
||||
// FILE: valid_noargs.kt
|
||||
package valid1
|
||||
fun main() {}
|
||||
|
||||
// FILE: valid_noargs2.kt
|
||||
package valid1
|
||||
fun main() {}
|
||||
|
||||
// FILE: valid_array.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array2.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_vararg.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_vararg2.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_array_typealias.kt
|
||||
package valid4
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_typealias2.kt
|
||||
package valid4
|
||||
typealias S = String
|
||||
fun main(args: Array<S>) {}
|
||||
|
||||
// FILE: valid_noargs_suspend.kt
|
||||
package valid5
|
||||
suspend fun main() {}
|
||||
|
||||
// FILE: valid_noargs_suspend2.kt
|
||||
package valid5
|
||||
suspend fun main() {}
|
||||
|
||||
// FILE: valid_array_suspend.kt
|
||||
package valid6
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_suspend2.kt
|
||||
package valid6
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_vararg_suspend.kt
|
||||
package valid7
|
||||
suspend fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_vararg_suspend2.kt
|
||||
package valid7
|
||||
suspend fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend.kt
|
||||
package valid8
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend2.kt
|
||||
package valid8
|
||||
typealias S = String
|
||||
suspend fun main(args: Array<S>) {}
|
||||
+113
@@ -0,0 +1,113 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// ### INVALID
|
||||
|
||||
// FILE: invalid_noargs.kt
|
||||
package invalid1
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array.kt
|
||||
package invalid2
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg.kt
|
||||
package invalid3
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias.kt
|
||||
package invalid4
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<S>)<!> {}
|
||||
|
||||
// FILE: invalid_noargs_suspend.kt
|
||||
package invalid5
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array_suspend.kt
|
||||
package invalid6
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg_suspend.kt
|
||||
package invalid7
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias_suspend.kt
|
||||
package invalid8
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<S>)<!> {}
|
||||
|
||||
// ### VALID
|
||||
|
||||
// FILE: valid_noargs.kt
|
||||
package valid1
|
||||
fun main() {}
|
||||
|
||||
// FILE: valid_noargs2.kt
|
||||
package valid1
|
||||
fun main() {}
|
||||
|
||||
// FILE: valid_array.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array2.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_vararg.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_vararg2.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_array_typealias.kt
|
||||
package valid4
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_typealias2.kt
|
||||
package valid4
|
||||
typealias S = String
|
||||
fun main(args: Array<S>) {}
|
||||
|
||||
// FILE: valid_noargs_suspend.kt
|
||||
package valid5
|
||||
suspend fun main() {}
|
||||
|
||||
// FILE: valid_noargs_suspend2.kt
|
||||
package valid5
|
||||
suspend fun main() {}
|
||||
|
||||
// FILE: valid_array_suspend.kt
|
||||
package valid6
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_suspend2.kt
|
||||
package valid6
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_vararg_suspend.kt
|
||||
package valid7
|
||||
suspend fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_vararg_suspend2.kt
|
||||
package valid7
|
||||
suspend fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend.kt
|
||||
package valid8
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend2.kt
|
||||
package valid8
|
||||
typealias S = String
|
||||
suspend fun main(args: Array<S>) {}
|
||||
+113
@@ -0,0 +1,113 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// ### INVALID
|
||||
|
||||
// FILE: invalid_noargs.kt
|
||||
package invalid1
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array.kt
|
||||
package invalid2
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg.kt
|
||||
package invalid3
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias.kt
|
||||
package invalid4
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun main(args: Array<S>)<!> {}
|
||||
|
||||
// FILE: invalid_noargs_suspend.kt
|
||||
package invalid5
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
|
||||
// FILE: invalid_array_suspend.kt
|
||||
package invalid6
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: invalid_vararg_suspend.kt
|
||||
package invalid7
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: invalid_array_typealias_suspend.kt
|
||||
package invalid8
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<S>)<!> {}
|
||||
|
||||
// ### VALID
|
||||
|
||||
// FILE: valid_noargs.kt
|
||||
package valid1
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: valid_noargs2.kt
|
||||
package valid1
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: valid_array.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array2.kt
|
||||
package valid2
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_vararg.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_vararg2.kt
|
||||
package valid3
|
||||
fun main(vararg args: String) {}
|
||||
|
||||
// FILE: valid_array_typealias.kt
|
||||
package valid4
|
||||
fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: valid_array_typealias2.kt
|
||||
package valid4
|
||||
typealias S = String
|
||||
fun main(args: Array<S>) {}
|
||||
|
||||
// FILE: valid_noargs_suspend.kt
|
||||
package valid5
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
|
||||
// FILE: valid_noargs_suspend2.kt
|
||||
package valid5
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main()<!> {}
|
||||
|
||||
// FILE: valid_array_suspend.kt
|
||||
package valid6
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: valid_array_suspend2.kt
|
||||
package valid6
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: valid_vararg_suspend.kt
|
||||
package valid7
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: valid_vararg_suspend2.kt
|
||||
package valid7
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(vararg args: String)<!> {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend.kt
|
||||
package valid8
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: valid_array_typealias_suspend2.kt
|
||||
package valid8
|
||||
typealias S = String
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<S>)<!> {}
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// FIR_IDENTICAL
|
||||
// FILE: a.kt
|
||||
fun main() {}
|
||||
|
||||
// FILE: b.kt
|
||||
fun main() {}
|
||||
-4
@@ -1,4 +0,0 @@
|
||||
package
|
||||
|
||||
public fun main(): kotlin.Unit
|
||||
public fun main(): kotlin.Unit
|
||||
Vendored
-8
@@ -1,8 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
// FILE: a.kt
|
||||
fun main() {}
|
||||
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: b.kt
|
||||
fun main() {}
|
||||
Vendored
-8
@@ -1,8 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
// FILE: a.kt
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: b.kt
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
Vendored
-5
@@ -1,5 +0,0 @@
|
||||
package
|
||||
|
||||
public fun main(): kotlin.Unit
|
||||
public fun main(): kotlin.Unit
|
||||
public suspend fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
Vendored
-7
@@ -1,7 +0,0 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// FILE: a.kt
|
||||
fun main() {}
|
||||
|
||||
// FILE: b.kt
|
||||
fun main() {}
|
||||
Vendored
-7
@@ -1,7 +0,0 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// FILE: a.kt
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
|
||||
// FILE: b.kt
|
||||
<!CONFLICTING_OVERLOADS!>fun main()<!> {}
|
||||
Vendored
-4
@@ -1,4 +0,0 @@
|
||||
package
|
||||
|
||||
public fun main(): kotlin.Unit
|
||||
public fun main(): kotlin.Unit
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// FIR_IDENTICAL
|
||||
// FILE: a.kt
|
||||
suspend fun main() {}
|
||||
|
||||
// FILE: b.kt
|
||||
suspend fun main() {}
|
||||
-4
@@ -1,4 +0,0 @@
|
||||
package
|
||||
|
||||
public suspend fun main(): kotlin.Unit
|
||||
public suspend fun main(): kotlin.Unit
|
||||
compiler/testData/diagnostics/tests/redeclarations/RedeclarationSuspendMainInMultiFile_before.fir.kt
Vendored
-7
@@ -1,7 +0,0 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// FILE: a.kt
|
||||
suspend fun main(args: Array<String>) {}
|
||||
|
||||
// FILE: b.kt
|
||||
suspend fun main(args: Array<String>) {}
|
||||
Vendored
-7
@@ -1,7 +0,0 @@
|
||||
// !LANGUAGE: -ExtendedMainConvention
|
||||
|
||||
// FILE: a.kt
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
|
||||
// FILE: b.kt
|
||||
<!CONFLICTING_OVERLOADS!>suspend fun main(args: Array<String>)<!> {}
|
||||
Vendored
-4
@@ -1,4 +0,0 @@
|
||||
package
|
||||
|
||||
public suspend fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
public suspend fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
+11
-1
@@ -1,3 +1,5 @@
|
||||
// FILE: a.kt
|
||||
|
||||
val <!REDECLARATION!>Test1<!> = null
|
||||
class <!REDECLARATION!>Test1<!>
|
||||
|
||||
@@ -10,4 +12,12 @@ object <!REDECLARATION!>Test3<!>
|
||||
val <!REDECLARATION!>Test4<!> = null
|
||||
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
interface <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
object <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
object <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
|
||||
val <!REDECLARATION!>Test5<!> = null
|
||||
class <!REDECLARATION!>Test6<!>
|
||||
|
||||
// FILE: b.kt
|
||||
|
||||
class <!REDECLARATION!>Test5<!>
|
||||
val <!REDECLARATION!>Test6<!> = null
|
||||
|
||||
+11
-1
@@ -1,3 +1,5 @@
|
||||
// FILE: a.kt
|
||||
|
||||
val <!REDECLARATION!>Test1<!> = null
|
||||
class <!REDECLARATION!>Test1<!>
|
||||
|
||||
@@ -10,4 +12,12 @@ object <!REDECLARATION!>Test3<!>
|
||||
val <!PACKAGE_OR_CLASSIFIER_REDECLARATION, REDECLARATION!>Test4<!> = null
|
||||
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION, REDECLARATION!>Test4<!>
|
||||
interface <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
object <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
object <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>Test4<!>
|
||||
|
||||
val <!REDECLARATION!>Test5<!> = null
|
||||
class <!REDECLARATION!>Test6<!>
|
||||
|
||||
// FILE: b.kt
|
||||
|
||||
class <!REDECLARATION!>Test5<!>
|
||||
val <!REDECLARATION!>Test6<!> = null
|
||||
|
||||
+17
@@ -4,6 +4,8 @@ public val Test1: kotlin.Nothing? = null
|
||||
public val Test2: kotlin.Nothing? = null
|
||||
public val Test3: kotlin.Nothing? = null
|
||||
public val Test4: kotlin.Nothing? = null
|
||||
public val Test5: kotlin.Nothing? = null
|
||||
public val Test6: kotlin.Nothing? = null
|
||||
|
||||
public final class Test1 {
|
||||
public constructor Test1()
|
||||
@@ -44,3 +46,18 @@ public object Test4 {
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Test5 {
|
||||
public constructor Test5()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Test6 {
|
||||
public constructor Test6()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
|
||||
-16
@@ -1,16 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -TOPLEVEL_TYPEALIASES_ONLY
|
||||
// FILE: file1.kt
|
||||
typealias <!REDECLARATION!>Test<!> = String
|
||||
|
||||
val <!REDECLARATION!>Test<!> = 42
|
||||
|
||||
class Outer {
|
||||
typealias <!REDECLARATION!>Test<!> = String
|
||||
|
||||
val <!REDECLARATION!>Test<!> = 42
|
||||
}
|
||||
|
||||
typealias Test2 = String
|
||||
|
||||
// FILE: file2.kt
|
||||
val Test2 = 42
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -TOPLEVEL_TYPEALIASES_ONLY
|
||||
// FILE: file1.kt
|
||||
typealias <!REDECLARATION!>Test<!> = String
|
||||
|
||||
-9
@@ -1,9 +0,0 @@
|
||||
object X1
|
||||
object X2
|
||||
|
||||
class A<T>
|
||||
|
||||
fun <T1> A<T1>.foo() = X1
|
||||
fun <T2> A<out T2>.foo() = X2
|
||||
|
||||
fun <T> A<out T>.test() = <!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!>() // TODO fix constraint system
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
object X1
|
||||
object X2
|
||||
|
||||
|
||||
+4
-4
@@ -1,12 +1,12 @@
|
||||
//!DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.jvm.JvmName("containsAny")
|
||||
@kotlin.internal.LowPriorityInOverloadResolution
|
||||
public fun <T> Iterable<T>.contains1(element: T): Int<!> = null!!
|
||||
public fun <T> Iterable<T>.contains1(element: T): Int = null!!
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
public fun <T> Iterable<T>.contains1(element: @kotlin.internal.NoInfer T): Boolean<!> = null!!
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
public fun <T> Iterable<T>.contains1(element: @kotlin.internal.NoInfer T): Boolean = null!!
|
||||
|
||||
|
||||
fun test() {
|
||||
|
||||
+4
-4
@@ -1,12 +1,12 @@
|
||||
//!DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.jvm.JvmName("containsAny")
|
||||
@kotlin.internal.LowPriorityInOverloadResolution
|
||||
public fun <T> Iterable<T>.contains1(element: T): Int<!> = null!!
|
||||
public fun <T> Iterable<T>.contains1(element: T): Int = null!!
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
public fun <@kotlin.internal.OnlyInputTypes T> Iterable<T>.contains1(element: T): Boolean<!> = null!!
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
public fun <@kotlin.internal.OnlyInputTypes T> Iterable<T>.contains1(element: T): Boolean = null!!
|
||||
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@JvmName("getAny")
|
||||
|
||||
Reference in New Issue
Block a user