KT-22274 report warning on labels that can't be referenced
Labels are meaningful only if they can be referenced by 'break', 'continue', or 'return' expressions.
This commit is contained in:
+1
-1
@@ -1,3 +1,3 @@
|
||||
fun test() {
|
||||
(d@ <!DECLARATION_IN_ILLEGAL_CONTEXT!>val <!UNUSED_VARIABLE!>bar<!> = 2<!>)
|
||||
(<!REDUNDANT_LABEL_WARNING!>d@<!> <!DECLARATION_IN_ILLEGAL_CONTEXT!>val <!UNUSED_VARIABLE!>bar<!> = 2<!>)
|
||||
}
|
||||
+5
-5
@@ -5,19 +5,19 @@ package m
|
||||
|
||||
fun test(i: Int?) {
|
||||
if (i != null) {
|
||||
foo(l1@ <!DEBUG_INFO_SMARTCAST!>i<!>)
|
||||
foo(<!OI;REDUNDANT_LABEL_WARNING!>l1@<!> <!DEBUG_INFO_SMARTCAST!>i<!>)
|
||||
foo((<!DEBUG_INFO_SMARTCAST!>i<!>))
|
||||
foo(l2@ (<!DEBUG_INFO_SMARTCAST!>i<!>))
|
||||
foo((l3@ <!DEBUG_INFO_SMARTCAST!>i<!>))
|
||||
foo(<!OI;REDUNDANT_LABEL_WARNING!>l2@<!> (<!DEBUG_INFO_SMARTCAST!>i<!>))
|
||||
foo((<!OI;REDUNDANT_LABEL_WARNING!>l3@<!> <!DEBUG_INFO_SMARTCAST!>i<!>))
|
||||
}
|
||||
|
||||
val a: Int = l4@ <!TYPE_MISMATCH!>""<!>
|
||||
val a: Int = <!OI;REDUNDANT_LABEL_WARNING!>l4@<!> <!TYPE_MISMATCH!>""<!>
|
||||
val b: Int = (<!TYPE_MISMATCH!>""<!>)
|
||||
val c: Int = checkSubtype<Int>(<!TYPE_MISMATCH!>""<!>)
|
||||
val d: Int = <!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH, TYPE_MISMATCH!>checkSubtype<Long>(<!TYPE_MISMATCH!>""<!>)<!>
|
||||
|
||||
|
||||
foo(l4@ <!TYPE_MISMATCH!>""<!>)
|
||||
foo(<!OI;REDUNDANT_LABEL_WARNING!>l4@<!> <!TYPE_MISMATCH!>""<!>)
|
||||
foo((<!TYPE_MISMATCH!>""<!>))
|
||||
foo(checkSubtype<Int>(<!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH, TYPE_MISMATCH!>""<!>))
|
||||
foo(<!NI;TYPE_MISMATCH, TYPE_MISMATCH!>checkSubtype<Long>(<!NI;TYPE_MISMATCH, NI;TYPE_MISMATCH, TYPE_MISMATCH!>""<!>)<!>)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
fun f(s : String?) : Boolean {
|
||||
return foo@(s?.equals("a"))!!
|
||||
return <!REDUNDANT_LABEL_WARNING!>foo@<!>(s?.equals("a"))!!
|
||||
}
|
||||
Reference in New Issue
Block a user