Update some testdata according to new inference behaviour

This commit is contained in:
Dmitriy Novozhilov
2019-01-21 14:40:19 +03:00
parent 667f5032b6
commit 42b333f6fd
6 changed files with 22 additions and 17 deletions
@@ -1,4 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !WITH_NEW_INFERENCE
abstract class SubFunction : kotlin.Function0<Unit>
@@ -7,6 +8,6 @@ fun <T> takeIt(x: T, f: SubFunction) {}
fun cr() {}
fun test() {
<!TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>takeIt<!>(42, <!TYPE_MISMATCH!>::cr<!>)
<!TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>takeIt<!>(42, <!TYPE_MISMATCH!>{ }<!>)
<!OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>takeIt<!>(42, <!TYPE_MISMATCH!>::cr<!>)
<!OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>takeIt<!>(42, <!TYPE_MISMATCH!>{ }<!>)
}
@@ -1,4 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !WITH_NEW_INFERENCE
class Scope
@@ -12,7 +13,7 @@ fun insideJob1() = doTheJob1()
suspend fun insideJob2() = doTheJob2()
suspend fun insideJob3() = doTheJob3()
fun doTheJob0() = simpleAsync0 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>insideJob0()<!> }
fun doTheJob1() = simpleAsync1 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>insideJob1()<!> }
suspend fun doTheJob2() = simpleAsync2 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!NON_LOCAL_SUSPENSION_POINT!>insideJob2<!>()<!> }
suspend fun doTheJob3() = simpleAsync3 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>insideJob3()<!> }
fun doTheJob0() = simpleAsync0 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!NI;DEBUG_INFO_MISSING_UNRESOLVED!>insideJob0<!>()<!> }
fun doTheJob1() = simpleAsync1 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!NI;DEBUG_INFO_MISSING_UNRESOLVED!>insideJob1<!>()<!> }
suspend fun doTheJob2() = simpleAsync2 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!NI;DEBUG_INFO_MISSING_UNRESOLVED, OI;NON_LOCAL_SUSPENSION_POINT!>insideJob2<!>()<!> }
suspend fun doTheJob3() = simpleAsync3 { <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!><!NI;DEBUG_INFO_MISSING_UNRESOLVED!>insideJob3<!>()<!> }
@@ -3,13 +3,13 @@ fun <T> test(t: T): T {
if (t != null) {
return t<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
}
return <!ALWAYS_NULL!>t<!>!!
<!NI;UNREACHABLE_CODE!>return<!> <!ALWAYS_NULL!>t<!>!!
}
fun <T> T.testThis(): String {
if (this != null) {
return this<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>.toString()
}
return this!!.toString()
<!NI;UNREACHABLE_CODE!>return<!> this!!<!NI;UNREACHABLE_CODE!>.toString()<!>
}
@@ -1,4 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !WITH_NEW_INFERENCE
@Target(AnnotationTarget.TYPE)
@DslMarker
@@ -20,7 +21,7 @@ fun baz4(x: @MyDsl B.() -> Unit) {}
fun @MyDsl A.baz5() {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
}
}
@@ -35,21 +36,21 @@ fun main() {
baz3 {
baz2 {
bar()
<!DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
}
}
baz1 {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
}
}
baz3 {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION_WARNING!>foo<!>()
}
}
@@ -1,5 +1,6 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !LANGUAGE: +DslMarkerOnFunctionTypeReceiver
// !WITH_NEW_INFERENCE
@Target(AnnotationTarget.TYPE)
@DslMarker
@@ -21,7 +22,7 @@ fun baz4(x: @MyDsl B.() -> Unit) {}
fun @MyDsl A.baz5() {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION!>foo<!>()
}
}
@@ -36,21 +37,21 @@ fun main() {
baz3 {
baz2 {
bar()
<!DSL_SCOPE_VIOLATION!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION!>foo<!>()
}
}
baz1 {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION!>foo<!>()
}
}
baz3 {
baz4 {
bar()
<!DSL_SCOPE_VIOLATION!>foo<!>()
<!OI;DSL_SCOPE_VIOLATION!>foo<!>()
}
}
@@ -1,4 +1,5 @@
// !LANGUAGE: +VariableDeclarationInWhenSubject
// !WITH_NEW_INFERENCE
fun foo(s1: Int, s2: Int) = s1 + s2
@@ -43,6 +44,6 @@ fun test5(x: Inv<out Any?>) {
fun test6(x: Inv<out String?>) {
when (val <!UNUSED_VARIABLE!>y<!> = x.data) {
is String -> <!DEBUG_INFO_SMARTCAST!>x.data<!>.length // should be ok
is String -> <!OI;DEBUG_INFO_SMARTCAST!>x.data<!><!NI;UNSAFE_CALL!>.<!>length // should be ok
}
}