[TD] Update diagnostics test data due to new test runners
Update includes:
- Changing syntax of `OI/`NI` tags from `<!NI;TAG!>` to `<!TAG{NI}!>`
- Fix some incorrect directives
- Change order of diagnostics in some places
- Remove ignored diagnostics from FIR test data (previously `DIAGNOSTICS` didn't work)
- Update FIR dumps in some places and add `FIR_IDENTICAL` if needed
- Replace all JAVAC_SKIP with SKIP_JAVAC directive
This commit is contained in:
Vendored
+1
-1
@@ -34,4 +34,4 @@ val test3 = generate {
|
||||
|
||||
interface A
|
||||
object B : A
|
||||
object C : A
|
||||
object C : A
|
||||
|
||||
+5
-5
@@ -9,21 +9,21 @@ class Controller<T> {
|
||||
|
||||
fun <S> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
|
||||
|
||||
val test1 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test1 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
apply {
|
||||
yield(4)
|
||||
}
|
||||
}
|
||||
|
||||
val test2 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test2 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(B)
|
||||
apply {
|
||||
yield(C)
|
||||
}
|
||||
}
|
||||
|
||||
val test3 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
this.<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>let<!> {
|
||||
val test3 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
this.<!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>let<!> {
|
||||
yield(B)
|
||||
}
|
||||
|
||||
@@ -34,4 +34,4 @@ val test3 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_N
|
||||
|
||||
interface A
|
||||
object B : A
|
||||
object C : A
|
||||
object C : A
|
||||
|
||||
+1
-1
@@ -19,4 +19,4 @@ fun test() {
|
||||
|
||||
test0(<!TYPE_MISMATCH!>::bar<!>)
|
||||
test1(::bar)
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -59,4 +59,4 @@ val test7 = generate {
|
||||
|
||||
val test8 = generate {
|
||||
safeExtension()
|
||||
}
|
||||
}
|
||||
|
||||
+7
-7
@@ -29,7 +29,7 @@ val test1 = generate {
|
||||
baseExtension()
|
||||
}
|
||||
|
||||
val test2 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test2 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
baseExtension()
|
||||
}
|
||||
|
||||
@@ -38,25 +38,25 @@ val test3 = generate {
|
||||
outNullableAnyExtension()
|
||||
}
|
||||
|
||||
val test4 = <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test4 = <!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
outNullableAnyExtension()
|
||||
}
|
||||
|
||||
val test5 = <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test5 = <!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(42)
|
||||
outAnyExtension()
|
||||
}
|
||||
|
||||
val test6 = <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test6 = <!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield("bar")
|
||||
invNullableAnyExtension()
|
||||
}
|
||||
|
||||
val test7 = <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
yield(<!NI;TYPE_MISMATCH!>"baz"<!>)
|
||||
val test7 = <!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(<!TYPE_MISMATCH{NI}!>"baz"<!>)
|
||||
genericExtension<Int>()
|
||||
}
|
||||
|
||||
val test8 = generate {
|
||||
safeExtension()
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -49,4 +49,4 @@ val test5 = generateSpecific {
|
||||
|
||||
val test6 = generateSpecific {
|
||||
stringBase()
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -28,11 +28,11 @@ val test1 = generate {
|
||||
yield("foo")
|
||||
}
|
||||
|
||||
val test2 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test2 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
starBase()
|
||||
}
|
||||
|
||||
val test3 = <!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test3 = <!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield("bar")
|
||||
stringBase()
|
||||
}
|
||||
@@ -47,6 +47,6 @@ val test5 = generateSpecific {
|
||||
stringBase()
|
||||
}
|
||||
|
||||
val test6 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generateSpecific<!> {
|
||||
val test6 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generateSpecific<!> {
|
||||
stringBase()
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -33,4 +33,4 @@ val test3 = generate {
|
||||
val test4 = generate {
|
||||
yield(3)
|
||||
barReturnType()
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -25,12 +25,12 @@ val test2 = generate {
|
||||
notYield(3)
|
||||
}
|
||||
|
||||
val test3 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test3 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(3)
|
||||
yieldBarReturnType(3)
|
||||
}
|
||||
|
||||
val test4 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test4 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(3)
|
||||
barReturnType()
|
||||
}
|
||||
}
|
||||
|
||||
compiler/testData/diagnostics/testsWithStdLib/coroutines/inference/inferCoroutineTypeInOldVersion.kt
Vendored
+2
-2
@@ -17,11 +17,11 @@ val member = build {
|
||||
add(42)
|
||||
}
|
||||
|
||||
val memberWithoutAnn = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>wrongBuild<!> {
|
||||
val memberWithoutAnn = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>wrongBuild<!> {
|
||||
<!ILLEGAL_SUSPEND_FUNCTION_CALL!>add<!>(42)
|
||||
}
|
||||
|
||||
val extension = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>build<!> {
|
||||
val extension = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>build<!> {
|
||||
extensionAdd("foo")
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -32,4 +32,4 @@ interface Inv<T> {
|
||||
fun yield(element: T)
|
||||
}
|
||||
|
||||
fun <K> materialize(): Inv<K> = TODO()
|
||||
fun <K> materialize(): Inv<K> = TODO()
|
||||
|
||||
+1
-1
@@ -17,4 +17,4 @@ fun main() {
|
||||
parse { it.toInt() }
|
||||
serialize { it.toString() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -13,8 +13,8 @@ class TypeDefinition<KotlinType : Any> {
|
||||
fun <KotlinType : Any> defineType(@BuilderInference definition: TypeDefinition<KotlinType>.() -> Unit): Unit = TODO()
|
||||
|
||||
fun main() {
|
||||
<!OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>defineType<!> {
|
||||
<!TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>defineType<!> {
|
||||
parse { it.toInt() }
|
||||
serialize { <!OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>it<!>.<!OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>toString<!>() }
|
||||
serialize { <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE{OI}!>it<!>.<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE{OI}!>toString<!>() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,6 +4,6 @@ fun main() {
|
||||
sequence {
|
||||
val list: List<String>? = null
|
||||
val outputList = <!DEBUG_INFO_EXPRESSION_TYPE("kotlin.collections.List<kotlin.String>")!>list ?: listOf()<!>
|
||||
yieldAll(outputList)
|
||||
<!NONE_APPLICABLE!>yieldAll<!>(outputList)
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -21,4 +21,4 @@ val test1 = generate {
|
||||
yieldGenerate {
|
||||
yield(4)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ suspend fun <S> GenericController<List<S>>.yieldGenerate(g: suspend GenericContr
|
||||
|
||||
val test1 = generate {
|
||||
// TODO: KT-15185
|
||||
<!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR, OI;TYPE_MISMATCH!>yieldGenerate<!> {
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR{OI}, TYPE_MISMATCH{OI}!>yieldGenerate<!> {
|
||||
yield(4)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -24,11 +24,11 @@ val member = build {
|
||||
add(42)
|
||||
}
|
||||
|
||||
val memberWithoutAnn = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>wrongBuild<!> {
|
||||
val memberWithoutAnn = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>wrongBuild<!> {
|
||||
add(42)
|
||||
}
|
||||
|
||||
val extension = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>build<!> {
|
||||
val extension = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>build<!> {
|
||||
extensionAdd("foo")
|
||||
}
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -21,4 +21,4 @@ val test1 = generate {
|
||||
|
||||
val test2: Int = generate {
|
||||
yield(A())
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+4
-4
@@ -15,10 +15,10 @@ fun <S> generate(@BuilderInference g: suspend Controller<S>.() -> Unit): S = TOD
|
||||
|
||||
class A
|
||||
|
||||
val test1 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test1 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(<!NO_COMPANION_OBJECT!>A<!>)
|
||||
}
|
||||
|
||||
val test2: Int = <!NI;TYPE_MISMATCH, OI;TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH!>generate {
|
||||
yield(<!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH!>A()<!>)
|
||||
}<!>
|
||||
val test2: Int = <!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>generate {
|
||||
yield(<!TYPE_MISMATCH{NI}, TYPE_MISMATCH{NI}!>A()<!>)
|
||||
}<!>
|
||||
|
||||
+1
-1
@@ -10,4 +10,4 @@ fun <S : Number> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
|
||||
|
||||
val test = generate {
|
||||
<!INAPPLICABLE_CANDIDATE!>yield<!>("foo")
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+2
-2
@@ -8,6 +8,6 @@ class Controller<T : Number> {
|
||||
|
||||
fun <S : Number> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
|
||||
|
||||
val test = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield("foo")
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -30,4 +30,4 @@ val extension = generate {
|
||||
|
||||
val safeExtension = generate {
|
||||
safeExtensionYield("foo")
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -24,10 +24,10 @@ val normal = generate {
|
||||
yield(42)
|
||||
}
|
||||
|
||||
val extension = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val extension = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
extensionYield("foo")
|
||||
}
|
||||
|
||||
val safeExtension = generate {
|
||||
safeExtensionYield("foo")
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -8,7 +8,7 @@ class GenericController<T> {
|
||||
|
||||
fun <S> generate(g: suspend GenericController<S>.(S) -> Unit): S = TODO()
|
||||
|
||||
val test1 = <!NI;NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, OI;TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>generate<!> {
|
||||
val test1 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER{NI}, TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER{OI}!>generate<!> {
|
||||
yield(4)
|
||||
}
|
||||
|
||||
|
||||
@@ -16,4 +16,4 @@ suspend fun fib(n: Long) =
|
||||
n < 2 -> n
|
||||
else -> fib(n - 1).<!UNRESOLVED_REFERENCE!>await<!>() <!AMBIGUITY!>+<!> fib(n - 2).<!UNRESOLVED_REFERENCE!>await<!>()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,6 @@ suspend fun fib(n: Long) =
|
||||
async {
|
||||
when {
|
||||
n < 2 -> n
|
||||
else -> <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!DEBUG_INFO_MISSING_UNRESOLVED!>fib<!>(<!DEBUG_INFO_MISSING_UNRESOLVED!>n<!> <!DEBUG_INFO_MISSING_UNRESOLVED!>-<!> 1)<!>.<!NI;DEBUG_INFO_MISSING_UNRESOLVED, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>await<!>() <!NI;DEBUG_INFO_MISSING_UNRESOLVED, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>+<!> fib(n - 2).<!NI;DEBUG_INFO_MISSING_UNRESOLVED, OI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>await<!>()
|
||||
else -> <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!DEBUG_INFO_MISSING_UNRESOLVED!>fib<!>(<!DEBUG_INFO_MISSING_UNRESOLVED!>n<!> <!DEBUG_INFO_MISSING_UNRESOLVED!>-<!> 1)<!>.<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE{OI}, DEBUG_INFO_MISSING_UNRESOLVED{NI}!>await<!>() <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE{OI}, DEBUG_INFO_MISSING_UNRESOLVED{NI}!>+<!> fib(n - 2).<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE{OI}, DEBUG_INFO_MISSING_UNRESOLVED{NI}!>await<!>()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -21,7 +21,7 @@ fun foo() {
|
||||
builder { 1 }
|
||||
|
||||
val x = { 1 }
|
||||
builder(<!NI;UNSUPPORTED_FEATURE, OI;TYPE_MISMATCH!>x<!>)
|
||||
builder(<!TYPE_MISMATCH{OI}, UNSUPPORTED_FEATURE{NI}!>x<!>)
|
||||
builder({1} <!UNCHECKED_CAST!>as (suspend () -> Int)<!>)
|
||||
|
||||
var i: Int = 1
|
||||
@@ -29,10 +29,10 @@ fun foo() {
|
||||
i = genericBuilder { 1 }
|
||||
genericBuilder { 1 }
|
||||
genericBuilder<Int> { 1 }
|
||||
genericBuilder<Int> { <!NI;TYPE_MISMATCH, TYPE_MISMATCH!>""<!> }
|
||||
genericBuilder<Int> { <!TYPE_MISMATCH{NI}, TYPE_MISMATCH!>""<!> }
|
||||
|
||||
val y = { 1 }
|
||||
<!OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>genericBuilder<!>(<!NI;UNSUPPORTED_FEATURE, OI;TYPE_MISMATCH!>y<!>)
|
||||
<!TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR{OI}!>genericBuilder<!>(<!TYPE_MISMATCH{OI}, UNSUPPORTED_FEATURE{NI}!>y<!>)
|
||||
|
||||
unitBuilder {}
|
||||
unitBuilder { <!UNUSED_EXPRESSION!>1<!> }
|
||||
@@ -44,7 +44,7 @@ fun foo() {
|
||||
val s: String = manyArgumentsBuilder({}, { "" }) { 1 }
|
||||
|
||||
manyArgumentsBuilder<String>({}, { "" }, { 1 })
|
||||
manyArgumentsBuilder<String>({}, { <!CONSTANT_EXPECTED_TYPE_MISMATCH, NI;CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!> }, { 2 })
|
||||
manyArgumentsBuilder<String>({}, { <!CONSTANT_EXPECTED_TYPE_MISMATCH, CONSTANT_EXPECTED_TYPE_MISMATCH{NI}!>1<!> }, { 2 })
|
||||
|
||||
severalParamsInLambda { <!NAME_SHADOWING!>x<!>, <!NAME_SHADOWING!>y<!> ->
|
||||
x checkType { _<String>() }
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ class Controller {
|
||||
suspend fun yieldString(value: String) = suspendCoroutineUninterceptedOrReturn<Int> {
|
||||
it.resume(1)
|
||||
it checkType { _<Continuation<Int>>() }
|
||||
it.<!OI;TYPE_INFERENCE_CONFLICTING_SUBSTITUTIONS!>resume<!>(<!NI;TYPE_MISMATCH!>""<!>)
|
||||
it.<!TYPE_INFERENCE_CONFLICTING_SUBSTITUTIONS{OI}!>resume<!>(<!TYPE_MISMATCH{NI}!>""<!>)
|
||||
|
||||
// We can return anything here, 'suspendCoroutineUninterceptedOrReturn' is not very type-safe
|
||||
// Also we can call resume and then return the value too, but it's still just our problem
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ class Controller {
|
||||
suspend fun yieldString(value: String) = suspendCoroutineUninterceptedOrReturn<Int> {
|
||||
it.resume(1)
|
||||
it checkType { _<Continuation<Int>>() }
|
||||
it.<!OI;TYPE_INFERENCE_CONFLICTING_SUBSTITUTIONS!>resume<!>(<!NI;TYPE_MISMATCH!>""<!>)
|
||||
it.<!TYPE_INFERENCE_CONFLICTING_SUBSTITUTIONS{OI}!>resume<!>(<!TYPE_MISMATCH{NI}!>""<!>)
|
||||
|
||||
// We can return anything here, 'suspendCoroutineUninterceptedOrReturn' is not very type-safe
|
||||
// Also we can call resume and then return the value too, but it's still just our problem
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ fun test() {
|
||||
|
||||
severalParams("", 89) checkType { _<Double>() }
|
||||
// TODO: should we allow somehow to call with passing continuation explicitly?
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER, OI;TYPE_MISMATCH!>_<!><Unit>() }
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!TYPE_MISMATCH{OI}, UNRESOLVED_REFERENCE_WRONG_RECEIVER{NI}!>_<!><Unit>() }
|
||||
|
||||
"".stringReceiver(1)
|
||||
Any().anyReceiver(1)
|
||||
|
||||
compiler/testData/diagnostics/testsWithStdLib/coroutines/suspendFunctionType/suspendFunctionN.fir.kt
Vendored
+2
-2
@@ -1,4 +1,4 @@
|
||||
// JAVAC_SKIP
|
||||
// SKIP_JAVAC
|
||||
typealias Test1 = <!UNRESOLVED_REFERENCE!>SuspendFunction0<Unit><!>
|
||||
typealias Test2 = <!UNRESOLVED_REFERENCE!>kotlin.SuspendFunction0<Unit><!>
|
||||
typealias Test3 = kotlin.coroutines.SuspendFunction0<Unit>
|
||||
typealias Test3 = kotlin.coroutines.SuspendFunction0<Unit>
|
||||
|
||||
Vendored
+2
-2
@@ -1,4 +1,4 @@
|
||||
// JAVAC_SKIP
|
||||
// SKIP_JAVAC
|
||||
typealias Test1 = <!UNRESOLVED_REFERENCE!>SuspendFunction0<!><Unit>
|
||||
typealias Test2 = kotlin.<!UNRESOLVED_REFERENCE!>SuspendFunction0<!><Unit>
|
||||
typealias Test3 = kotlin.coroutines.SuspendFunction0<Unit>
|
||||
typealias Test3 = kotlin.coroutines.SuspendFunction0<Unit>
|
||||
|
||||
+2
-2
@@ -37,7 +37,7 @@ fun test() {
|
||||
severalParams("", 89) checkType { _<Double>() }
|
||||
|
||||
// TODO: should we allow somehow to call with passing continuation explicitly?
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER, OI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, OI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Unit>() }
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>this <!CAST_NEVER_SUCCEEDS!>as<!> Continuation<Double><!>) checkType { <!NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER, OI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, OI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><Unit>() }
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>6.9<!>) checkType { <!DEBUG_INFO_UNRESOLVED_WITH_TARGET{OI}, UNRESOLVED_REFERENCE_WRONG_RECEIVER{NI}!>_<!><Unit>() }
|
||||
severalParams("", 89, <!TOO_MANY_ARGUMENTS!>this <!CAST_NEVER_SUCCEEDS!>as<!> Continuation<Double><!>) checkType { <!DEBUG_INFO_UNRESOLVED_WITH_TARGET{OI}, UNRESOLVED_REFERENCE_WRONG_RECEIVER{NI}!>_<!><Unit>() }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,10 +8,10 @@ fun <T> genericBuilder(c: suspend () -> T): T = null!!
|
||||
fun foo() {
|
||||
var result = ""
|
||||
genericBuilder<String> {
|
||||
<!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH!>try {
|
||||
<!TYPE_MISMATCH{NI}, TYPE_MISMATCH{NI}!>try {
|
||||
await("")
|
||||
} catch(e: Exception) {
|
||||
<!OI;EXPECTED_TYPE_MISMATCH!>result = "fail"<!>
|
||||
<!EXPECTED_TYPE_MISMATCH{OI}!>result = "fail"<!>
|
||||
}<!>
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user