KT-610 Distinguish errors 'unused variable' and 'variable is assigned but never accessed'

This commit is contained in:
svtk
2011-11-28 13:15:03 +04:00
parent 4c2b0b9444
commit ecb3db0912
11 changed files with 139 additions and 96 deletions
@@ -11,7 +11,7 @@ class C() {
}
fun f(): Unit {
var x: Int? = 1
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>x<!>: Int? = 1
x = 1
x <!UNSAFE_INFIX_CALL!>+<!> 1
x <!UNSAFE_INFIX_CALL!>plus<!> 1
@@ -179,7 +179,7 @@ fun declarations(a: Any?) {
}
}
fun vars(a: Any?) {
var <!UNUSED_VARIABLE!>b<!>: Int = 0
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>b<!>: Int = 0
if (a is Int) {
b = <!UNUSED_VALUE!>a<!>
}
@@ -17,7 +17,7 @@ class AClass() {
val x : Any? = 1
fun Any?.vars(a: Any?) : Int {
var <!UNUSED_VARIABLE!>b<!>: Int = 0
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>b<!>: Int = 0
if (ns.y is Int) {
b = <!UNUSED_VALUE!>ns.y<!>
}
@@ -74,7 +74,7 @@ trait T {}
open class C {
fun foo() {
var <!UNUSED_VARIABLE!>t<!> : T? = null
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>t<!> : T? = null
if (this is T) {
t = <!UNUSED_VALUE!>this<!>
}
@@ -16,7 +16,7 @@ fun t1(b : Boolean) {
}
doSmth(<!UNINITIALIZED_VARIABLE!>u<!>)
var r: String
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>r<!>: String
if (b) {
r = "s"
}
@@ -63,10 +63,10 @@ fun t4(a: A, val b: A, var c: A) {
// reassigned vals
fun t1() {
val <!UNUSED_VARIABLE!>a<!> : Int = 1
val <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>a<!> : Int = 1
<!VAL_REASSIGNMENT!>a<!> = <!UNUSED_VALUE!>2<!>
var <!UNUSED_VARIABLE!>b<!> : Int = 1
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>b<!> : Int = 1
b = <!UNUSED_VALUE!>3<!>
}
@@ -1,7 +1,7 @@
namespace unused_variables
fun testSimpleCases() {
var i = 2
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>i<!> = 2
i = <!UNUSED_VALUE!>34<!>
i = 34
doSmth(i)
@@ -9,7 +9,7 @@ fun testSimpleCases() {
var j = 2
j = <!UNUSED_CHANGED_VALUE!>j++<!>
j = <!UNUSED_CHANGED_VALUE, UNUSED_VALUE!>j--<!>
j = <!UNUSED_VALUE, UNUSED_CHANGED_VALUE!>j--<!>
}
class IncDec() {
@@ -45,7 +45,7 @@ class MyTest() {
fun testSimple() {
a = "rro"
var <!UNUSED_VARIABLE!>i<!> = 1;
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>i<!> = 1;
i = <!UNUSED_VALUE!>34<!>;
i = <!UNUSED_VALUE!>456<!>;
}
@@ -62,7 +62,7 @@ class MyTest() {
}
fun testIf() {
var a : Any
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>a<!> : Any
if (1 < 2) {
a = 23
}
@@ -91,7 +91,7 @@ class MyTest() {
}
fun testInnerFunctions() {
var <!UNUSED_VARIABLE!>y<!> = 1
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>y<!> = 1
fun foo() {
y = <!UNUSED_VALUE!>1<!>
}
@@ -0,0 +1,10 @@
//KT-610 Distinguish errors 'unused variable' and 'variable is assigned but never accessed'
namespace kt610
fun foo() {
var <!UNUSED_VARIABLE!>j<!> = 9 //'unused variable' error
var <!ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE!>i<!> = 1 //should be an error 'variable i is assigned but never accessed'
i = <!UNUSED_VALUE!>2<!>
}