[FIR] Fix tests (ARGUMENT_TYPE_MISMATCH instead of INCOMPATIBLE_CANDIDATE)

This commit is contained in:
Ivan Kochurkin
2021-04-06 01:35:30 +03:00
committed by TeamCityServer
parent 4ffab5fe5a
commit ad9b962536
461 changed files with 1239 additions and 1246 deletions
@@ -11,24 +11,24 @@ fun <S> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
val test1 = generate {
apply {
<!INAPPLICABLE_CANDIDATE!>yield<!>(4)
yield(<!ARGUMENT_TYPE_MISMATCH!>4<!>)
}
}
val test2 = generate {
<!INAPPLICABLE_CANDIDATE!>yield<!>(B)
yield(<!ARGUMENT_TYPE_MISMATCH!>B<!>)
apply {
<!INAPPLICABLE_CANDIDATE!>yield<!>(C)
yield(<!ARGUMENT_TYPE_MISMATCH!>C<!>)
}
}
val test3 = generate {
this.let {
<!INAPPLICABLE_CANDIDATE!>yield<!>(B)
yield(<!ARGUMENT_TYPE_MISMATCH!>B<!>)
}
apply {
<!INAPPLICABLE_CANDIDATE!>yield<!>(C)
yield(<!ARGUMENT_TYPE_MISMATCH!>C<!>)
}
}
@@ -12,6 +12,6 @@ fun <S> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
suspend fun Base.baseExtension() {}
val test1 = generate {
<!INAPPLICABLE_CANDIDATE!>yield<!>("foo")
yield(<!ARGUMENT_TYPE_MISMATCH!>"foo"<!>)
baseExtension()
}
@@ -14,17 +14,17 @@ fun <S> Builder<S>.extensionAdd(s: S) {}
suspend fun <S> Builder<S>.safeExtensionAdd(s: S) {}
val member = build {
<!INAPPLICABLE_CANDIDATE!>add<!>(42)
add(<!ARGUMENT_TYPE_MISMATCH!>42<!>)
}
val memberWithoutAnn = wrongBuild {
<!INAPPLICABLE_CANDIDATE!>add<!>(42)
add(<!ARGUMENT_TYPE_MISMATCH!>42<!>)
}
val extension = build {
<!INAPPLICABLE_CANDIDATE!>extensionAdd<!>("foo")
extensionAdd(<!ARGUMENT_TYPE_MISMATCH!>"foo"<!>)
}
val safeExtension = build {
<!INAPPLICABLE_CANDIDATE!>safeExtensionAdd<!>("foo")
safeExtensionAdd(<!ARGUMENT_TYPE_MISMATCH!>"foo"<!>)
}
@@ -20,8 +20,8 @@ suspend fun yield() {}
fun test() {
builder {
<!INAPPLICABLE_CANDIDATE!>send<!>(run {
send(<!ARGUMENT_TYPE_MISMATCH!>run {
yield() // No error but `yield` is not inside "suspension" context actually
})
}<!>)
}
}
@@ -24,7 +24,7 @@ suspend fun foo(x: Int) = flow {
var newValue = 1
newValue += listOf<Int>().asSequence().fold(0) { total, next ->
<!INAPPLICABLE_CANDIDATE!>call<!>(11)
call(<!ARGUMENT_TYPE_MISMATCH!>11<!>)
total + next
}
newValue += listOf<Int>().asSequence().fold(0, fun(total, next): Int { return total + next })
@@ -9,7 +9,7 @@ fun call(x: String) {}
fun foo(x: Float, y: Float) = {
var newValue = 1
newValue += listOf<Int>().asSequence().fold(0) { total, next ->
<!INAPPLICABLE_CANDIDATE!>call<!>(11)
call(<!ARGUMENT_TYPE_MISMATCH!>11<!>)
total + next
}
newValue += listOf<Int>().asSequence().fold(0, fun(total, next): Int { return total + next })
@@ -26,7 +26,7 @@ fun <T> id(x: T) = x
fun foo2() = {
var x = A()
x <!INAPPLICABLE_CANDIDATE!>+=<!> { "" }
x += { <!ARGUMENT_TYPE_MISMATCH!>""<!> }
var y = A()
y += 1
}
@@ -25,7 +25,7 @@ val member = build {
}
val memberWithoutAnn = wrongBuild {
<!INAPPLICABLE_CANDIDATE!>add<!>(42)
add(<!ARGUMENT_TYPE_MISMATCH!>42<!>)
}
val extension = build {
@@ -9,5 +9,5 @@ class Controller<T : Number> {
fun <S : Number> generate(g: suspend Controller<S>.() -> Unit): S = TODO()
val test = generate {
<!INAPPLICABLE_CANDIDATE!>yield<!>("foo")
yield(<!ARGUMENT_TYPE_MISMATCH!>"foo"<!>)
}
@@ -9,7 +9,7 @@ class GenericController<T> {
fun <S> generate(g: suspend GenericController<S>.(S) -> Unit): S = TODO()
val test1 = generate {
<!INAPPLICABLE_CANDIDATE!>yield<!>(4)
yield(<!ARGUMENT_TYPE_MISMATCH!>4<!>)
}
val test2 = generate<Int> {
@@ -12,12 +12,12 @@ fun <E> myBuildList(@BuilderInference builderAction: MutableList<E>.() -> Unit)
fun main() {
val newList1 = myBuildList {
addAll(
listOf(1).map { <!INAPPLICABLE_CANDIDATE!>Foo<!>(null) }
listOf(1).map { Foo(<!ARGUMENT_TYPE_MISMATCH!>null<!>) }
)
}
val newList2 = buildList {
addAll(listOf(1,2,3).map{ <!INAPPLICABLE_CANDIDATE!>Foo<!>(null) })
addAll(listOf(1,2,3).map{ Foo(<!ARGUMENT_TYPE_MISMATCH!>null<!>) })
}
}
@@ -19,7 +19,7 @@ class Controller {
suspend fun yieldString(value: String) = suspendCoroutineUninterceptedOrReturn<Int> {
it.resume(1)
it checkType { _<Continuation<Int>>() }
it.<!INAPPLICABLE_CANDIDATE!>resume<!>("")
it.resume(<!ARGUMENT_TYPE_MISMATCH!>""<!>)
// 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
@@ -22,7 +22,7 @@ fun test() {
builder {
noParams()
yieldString("abc") checkType { _<Unit>() }
<!INAPPLICABLE_CANDIDATE!>yieldString<!>(1) checkType { _<Unit>() }
yieldString(<!ARGUMENT_TYPE_MISMATCH!>1<!>) checkType { _<Unit>() }
await<String> { "123" } checkType { _<String>() }
@@ -7,7 +7,7 @@ fun useFn(fn: () -> Unit) = fn
fun ambiguous(sfn: suspend () -> Unit) = sfn
fun ambiguous(fn: () -> Unit) = fn
fun test1(sfn: suspend () -> Unit) = <!INAPPLICABLE_CANDIDATE!>useFn<!>(sfn)
fun test1(sfn: suspend () -> Unit) = useFn(<!ARGUMENT_TYPE_MISMATCH!>sfn<!>)
fun test2(fn: () -> Unit) = useSuspendFn(fn)
fun test3(sfn: suspend () -> Unit) = useSuspendFn(sfn)
@@ -22,7 +22,7 @@ fun test() {
builder {
noParams()
yieldString("abc") checkType { _<Unit>() }
<!INAPPLICABLE_CANDIDATE!>yieldString<!>(1) checkType { _<Unit>() }
yieldString(<!ARGUMENT_TYPE_MISMATCH!>1<!>) checkType { _<Unit>() }
await<String> { "123" } checkType { _<String>() }