added info about smart casts to diagnostic tests

This commit is contained in:
Svetlana Isakova
2013-12-06 20:12:41 +04:00
parent 00da5fe1fb
commit c30259dfbe
116 changed files with 383 additions and 348 deletions
@@ -3,5 +3,5 @@ package a
fun <T> foo(u: T, <!UNUSED_PARAMETER!>v<!>: T): T = u
fun test(s: String?) {
val <!UNUSED_VARIABLE!>r<!>: String = foo(s!!, s)
val <!UNUSED_VARIABLE!>r<!>: String = foo(s!!, <!DEBUG_INFO_AUTOCAST!>s<!>)
}
@@ -45,7 +45,7 @@ fun testErrorMessages(a: A, ml: MutableList<String>) {
fun rr(s: String?) {
if (s != null) {
val l = arrayListOf("", s)
val l = arrayListOf("", <!DEBUG_INFO_AUTOCAST!>s<!>)
l: MutableList<String>
<!TYPE_MISMATCH!>l<!>: MutableList<String?>
}
@@ -6,9 +6,9 @@ import java.util.HashMap
fun foo(map: MutableMap<Int, String>, value: String?) {
if (value != null) {
map.put(1, value) //ok
map.set(1, value) //type inference failed
map[1] = value //type inference failed
map.put(1, <!DEBUG_INFO_AUTOCAST!>value<!>) //ok
map.set(1, <!DEBUG_INFO_AUTOCAST!>value<!>) //type inference failed
map[1] = <!DEBUG_INFO_AUTOCAST!>value<!> //type inference failed
}
}
@@ -26,7 +26,7 @@ public data open class Tag(public var tagName: String) {
}
else {
attributes["id"] = value<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
attributes["id"] = value
attributes["id"] = <!DEBUG_INFO_AUTOCAST!>value<!>
}
}
}
@@ -5,7 +5,7 @@ class C<T>(t :T)
fun test1(a: Any) {
if (a is String) {
val <!UNUSED_VARIABLE!>c<!>: C<String> = C(a)
val <!UNUSED_VARIABLE!>c<!>: C<String> = C(<!DEBUG_INFO_AUTOCAST!>a<!>)
}
}
@@ -14,6 +14,6 @@ fun f<T>(t :T): C<T> = C(t)
fun test2(a: Any) {
if (a is String) {
val <!UNUSED_VARIABLE!>c1<!>: C<String> = f(a)
val <!UNUSED_VARIABLE!>c1<!>: C<String> = f(<!DEBUG_INFO_AUTOCAST!>a<!>)
}
}
@@ -4,9 +4,9 @@ package a
fun main(args: Array<String>) {
val value: String? = ""
if (value != null) {
foo(Pair("val", value))
foo(Pair("val", <!DEBUG_INFO_AUTOCAST!>value<!>))
foo(Pair("val", value<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>))
foo(Pair<String, String>("val", value))
foo(Pair<String, String>("val", <!DEBUG_INFO_AUTOCAST!>value<!>))
}
}