Mark only unreachable parts of element if it has reachable parts
like for 'return todo()' mark only 'return'
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
//KT-2585 Code in try-finally is incorrectly marked as unreachable
|
||||
|
||||
fun foo() {
|
||||
try {
|
||||
<!UNREACHABLE_CODE!>throw<!> RuntimeException()
|
||||
} catch (e: Exception) {
|
||||
<!UNREACHABLE_CODE!>return<!> // <- Wrong UNREACHABLE_CODE
|
||||
} finally {
|
||||
while (true);
|
||||
}
|
||||
}
|
||||
|
||||
fun bar() {
|
||||
try {
|
||||
throw RuntimeException()
|
||||
} catch (e: Exception) {
|
||||
return // <- Wrong UNREACHABLE_CODE
|
||||
} finally {
|
||||
while (cond());
|
||||
}
|
||||
}
|
||||
|
||||
fun cond() = true
|
||||
Reference in New Issue
Block a user