KT-5200 Mark unreachable code in lambdas

#KT-5200 Fixed
This commit is contained in:
Svetlana Isakova
2014-06-17 15:50:07 +04:00
parent abfc8ed7e8
commit 4279da12f5
4 changed files with 38 additions and 3 deletions
@@ -0,0 +1,27 @@
//KT-5200 Mark unreachable code in lambdas
fun test1(): String {
doCall @local {
() : String ->
throw NullPointerException()
<!UNREACHABLE_CODE!>"b3"<!> //unmarked
}
return "OK"
}
fun test2(nonLocal: String, b: Boolean): String {
doCall @local {
() : String ->
if (b) {
return@local "b1"
} else {
return@local "b2"
}
<!UNREACHABLE_CODE!>"b3"<!> //unmarked
}
return nonLocal
}
inline fun doCall(block: ()-> String) = block()