[FIR] Improve diagnostic reporting & don't use error symbol for candidate if possible
Also introduce few new diagnostics: - NONE_APPLICABLE more many inapplicable candidates - HIDDEN for visible candidates
This commit is contained in:
committed by
Mikhail Glukhikh
parent
5c0528b61e
commit
f283f2db43
+4
-4
@@ -40,12 +40,12 @@ class Case1 : AbstractClassCase1(){
|
||||
|
||||
fun case1(){
|
||||
val a = Case1()
|
||||
a.<!INAPPLICABLE_CANDIDATE!>priv<!>()
|
||||
a.<!HIDDEN!>priv<!>()
|
||||
a.prot()
|
||||
a.int()
|
||||
a.pub()
|
||||
|
||||
a.<!INAPPLICABLE_CANDIDATE!>priv1<!>
|
||||
a.<!HIDDEN!>priv1<!>
|
||||
a.prot1
|
||||
a.int1
|
||||
a.pub1
|
||||
@@ -59,12 +59,12 @@ import base.*
|
||||
// TESTCASE NUMBER: 2
|
||||
fun case2() {
|
||||
val a = Case1()
|
||||
a.<!INAPPLICABLE_CANDIDATE!>priv<!>()
|
||||
a.<!HIDDEN!>priv<!>()
|
||||
a.prot()
|
||||
a.int()
|
||||
a.pub()
|
||||
|
||||
a.<!INAPPLICABLE_CANDIDATE!>priv1<!>
|
||||
a.<!HIDDEN!>priv1<!>
|
||||
a.prot1
|
||||
a.int1
|
||||
a.pub1
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ import checkSubtype
|
||||
fun case1() {
|
||||
val a: Any = true
|
||||
if (a) { "true" } else "false"
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Boolean>(a)
|
||||
<!NONE_APPLICABLE!>checkSubtype<!><Boolean>(a)
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -38,7 +38,7 @@ fun case1() {
|
||||
fun case2() {
|
||||
val a = JavaContainer.aO
|
||||
if (a) { "true" } else "false"
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Boolean>(a)
|
||||
<!NONE_APPLICABLE!>checkSubtype<!><Boolean>(a)
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
|
||||
+6
-6
@@ -1,11 +1,11 @@
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1() {
|
||||
true checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean?>() }
|
||||
false checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean?>() }
|
||||
true checkType { <!NONE_APPLICABLE!>check<!><Boolean?>() }
|
||||
false checkType { <!NONE_APPLICABLE!>check<!><Boolean?>() }
|
||||
|
||||
true checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Any?>() }
|
||||
false checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Any>() }
|
||||
true checkType { <!NONE_APPLICABLE!>check<!><Any?>() }
|
||||
false checkType { <!NONE_APPLICABLE!>check<!><Any>() }
|
||||
|
||||
true checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Nothing?>() }
|
||||
false checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Nothing>() }
|
||||
true checkType { <!NONE_APPLICABLE!>check<!><Nothing?>() }
|
||||
false checkType { <!NONE_APPLICABLE!>check<!><Nothing>() }
|
||||
}
|
||||
|
||||
+6
-6
@@ -2,12 +2,12 @@
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1() {
|
||||
0L checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
1000000L checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Int>() }
|
||||
0XAf10cDL checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Int>() }
|
||||
0x0_0L checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
0b100_000_111_111L checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
0b0L checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
0L checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
1000000L checkType { <!NONE_APPLICABLE!>check<!><Int>() }
|
||||
0XAf10cDL checkType { <!NONE_APPLICABLE!>check<!><Int>() }
|
||||
0x0_0L checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
0b100_000_111_111L checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
0b0L checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(0L)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(1000000L)
|
||||
|
||||
+47
-47
@@ -2,83 +2,83 @@
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1() {
|
||||
0 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
0 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
0 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
0 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
0 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
0 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
fun case_2() {
|
||||
127 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
127 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
127 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
127 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
127 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
127 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(128)
|
||||
128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
128 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
128 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
128 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
-128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-128 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-128 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-128 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-128 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-129)
|
||||
-129 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-129 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-129 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-129 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-129 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-129 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
fun case_3() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(32767)
|
||||
32767 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
32767 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
32767 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
32767 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
32767 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
32767 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(32768)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(32768)
|
||||
32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
32768 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
32768 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
32768 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-32768)
|
||||
-32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-32768 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-32768 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-32768 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-32768 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-32769)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(-32769)
|
||||
-32769 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-32769 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-32769 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-32769 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-32769 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-32769 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case_4() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(2147483647)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(2147483647)
|
||||
2147483647 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
2147483647 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
2147483647 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
2147483647 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
2147483647 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
2147483647 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(2147483648)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(2147483648)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(2147483648)
|
||||
2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Int>() }
|
||||
2147483648 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
2147483648 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
2147483648 checkType { <!NONE_APPLICABLE!>check<!><Int>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-2147483648)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(-2147483648)
|
||||
-2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-2147483648 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-2147483648 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-2147483648 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-2147483648 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-2147483649)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(-2147483649)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(-2147483649)
|
||||
-2147483649 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-2147483649 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-2147483649 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-2147483649 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-2147483649 checkType { check<Int>() }
|
||||
}
|
||||
|
||||
@@ -87,15 +87,15 @@ fun case_5() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(9223372036854775807)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(9223372036854775807)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(9223372036854775807)
|
||||
9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Int>() }
|
||||
9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Int>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Byte>(-9223372036854775807)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(-9223372036854775807)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(-9223372036854775807)
|
||||
-9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
-9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
-9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
-9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
-9223372036854775807 checkType { check<Int>() }
|
||||
}
|
||||
|
||||
@@ -105,8 +105,8 @@ fun case_6() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Short>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!>)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Int>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!>)
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!>)
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Byte>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Short>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Int>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Byte>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Short>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Int>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
+6
-6
@@ -3,23 +3,23 @@
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!>)
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!>)
|
||||
<!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!ILLEGAL_CONST_EXPRESSION!>9223372036854775808L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
fun case_2() {
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!>)
|
||||
<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!>)
|
||||
<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!>)
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000L<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>checkSubtype<!><Long>(<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!>)
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
<!AMBIGUITY!>-<!><!ILLEGAL_CONST_EXPRESSION!>100000000000000000000000000000000l<!> <!INAPPLICABLE_CANDIDATE!>checkType<!> { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
}
|
||||
|
||||
+2
-2
@@ -68,7 +68,7 @@ fun case_4() {
|
||||
checkSubtype<Int>(-2147483648)
|
||||
checkSubtype<Long>(-2147483648)
|
||||
|
||||
-2147483649 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-2147483649 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-2147483649)
|
||||
}
|
||||
|
||||
@@ -77,6 +77,6 @@ fun case_5() {
|
||||
9223372036854775807 checkType { check<Long>() }
|
||||
checkSubtype<Long>(9223372036854775807)
|
||||
|
||||
-9223372036854775807 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-9223372036854775807 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-9223372036854775807)
|
||||
}
|
||||
|
||||
+2
-2
@@ -68,7 +68,7 @@ fun case_4() {
|
||||
checkSubtype<Int>(-0x80000000)
|
||||
checkSubtype<Long>(-0x80000000)
|
||||
|
||||
-0x80000001 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-0x80000001 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-0x80000001)
|
||||
}
|
||||
|
||||
@@ -77,6 +77,6 @@ fun case_5() {
|
||||
0X7FFFFFFFFFFFFFFF checkType { check<Long>() }
|
||||
checkSubtype<Long>(0X7FFFFFFFFFFFFFFF)
|
||||
|
||||
-0X7FFFFFFFFFFFFFFF checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-0X7FFFFFFFFFFFFFFF checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-0X7FFFFFFFFFFFFFFF)
|
||||
}
|
||||
|
||||
+2
-2
@@ -68,7 +68,7 @@ fun case_4() {
|
||||
checkSubtype<Int>(-0B10000000000000000000000000000000)
|
||||
checkSubtype<Long>(-0B10000000000000000000000000000000)
|
||||
|
||||
-0b10000000000000000000000000000001 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-0b10000000000000000000000000000001 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-0b10000000000000000000000000000001)
|
||||
}
|
||||
|
||||
@@ -77,6 +77,6 @@ fun case_5() {
|
||||
0b111111111111111111111111111111111111111111111111111111111111111 checkType { check<Long>() }
|
||||
checkSubtype<Long>(0b111111111111111111111111111111111111111111111111111111111111111)
|
||||
|
||||
-0B111111111111111111111111111111111111111111111111111111111111111 checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Long>() }
|
||||
-0B111111111111111111111111111111111111111111111111111111111111111 checkType { <!NONE_APPLICABLE!>check<!><Long>() }
|
||||
checkSubtype<Long>(-0B111111111111111111111111111111111111111111111111111111111111111)
|
||||
}
|
||||
|
||||
+3
-3
@@ -26,7 +26,7 @@ fun case1() {
|
||||
val a: Boolean? = false
|
||||
checkSubtype<Boolean?>(a)
|
||||
val x4 = a && true
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
@@ -34,7 +34,7 @@ fun case2() {
|
||||
val a: Any = false
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any")!>a<!>
|
||||
val x4 = a && true
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
@@ -46,7 +46,7 @@ fun case3() {
|
||||
val x3 = a1 && a2
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Boolean")!>x3<!>
|
||||
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
|
||||
+1
-1
@@ -42,5 +42,5 @@ fun case1() {
|
||||
val x3 = a1 && a2 && a3 && a4 && a5 as Boolean
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Boolean")!>x3<!>
|
||||
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>()}
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>()}
|
||||
}
|
||||
|
||||
+3
-3
@@ -26,7 +26,7 @@ fun case1() {
|
||||
val a: Boolean? = false
|
||||
checkSubtype<Boolean?>(a)
|
||||
val x4 = a || true
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 2
|
||||
@@ -34,7 +34,7 @@ fun case2() {
|
||||
val a: Any = false
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any")!>a<!>
|
||||
val x4 = a || true
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x4 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 3
|
||||
@@ -46,7 +46,7 @@ fun case3() {
|
||||
val x3 = a1 || a2
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Boolean")!>x3<!>
|
||||
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>() }
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>() }
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
|
||||
+1
-1
@@ -42,5 +42,5 @@ fun case1() {
|
||||
val x3 = a1 || a2 || a3 || a4 || a5 as Boolean
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Boolean")!>x3<!>
|
||||
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!INAPPLICABLE_CANDIDATE!>check<!><Boolean>()}
|
||||
x3 <!AMBIGUITY!>checkType<!> { <!NONE_APPLICABLE!>check<!><Boolean>()}
|
||||
}
|
||||
|
||||
+2
-2
@@ -11,7 +11,7 @@ class Case1() {
|
||||
}
|
||||
|
||||
fun case() {
|
||||
<!INAPPLICABLE_CANDIDATE!>Companion<!>(<!UNRESOLVED_REFERENCE!>::x<!>)
|
||||
<!NONE_APPLICABLE!>Companion<!>(<!UNRESOLVED_REFERENCE!>::x<!>)
|
||||
}
|
||||
|
||||
val x = ""
|
||||
@@ -27,7 +27,7 @@ class Case2() {
|
||||
}
|
||||
|
||||
fun case() {
|
||||
<!INAPPLICABLE_CANDIDATE!>Companion<!>(<!UNRESOLVED_REFERENCE!>::x<!>)
|
||||
<!NONE_APPLICABLE!>Companion<!>(<!UNRESOLVED_REFERENCE!>::x<!>)
|
||||
}
|
||||
|
||||
val x = C()
|
||||
|
||||
+4
-4
@@ -28,10 +28,10 @@ class Case2() {
|
||||
}
|
||||
|
||||
fun case() {
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!DEBUG_INFO_EXPRESSION_TYPE("Type is unknown"), UNRESOLVED_REFERENCE!>::invoke<!>, <!DEBUG_INFO_EXPRESSION_TYPE("Type is unknown"), UNRESOLVED_REFERENCE!>::invoke<!>)
|
||||
<!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)
|
||||
<!DEBUG_INFO_CALL("fqName: fqName is unknown; typeCall: unresolved")!><!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("ERROR CLASS: Inapplicable(INAPPLICABLE): [/Case2.foo, /Case2.foo]")!><!INAPPLICABLE_CANDIDATE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)<!>
|
||||
<!NONE_APPLICABLE!>foo<!>(<!DEBUG_INFO_EXPRESSION_TYPE("Type is unknown"), UNRESOLVED_REFERENCE!>::invoke<!>, <!DEBUG_INFO_EXPRESSION_TYPE("Type is unknown"), UNRESOLVED_REFERENCE!>::invoke<!>)
|
||||
<!NONE_APPLICABLE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)
|
||||
<!DEBUG_INFO_CALL("fqName: fqName is unknown; typeCall: unresolved")!><!NONE_APPLICABLE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("ERROR CLASS: Ambiguity: foo, [/Case2.foo, /Case2.foo]")!><!NONE_APPLICABLE!>foo<!>(<!UNRESOLVED_REFERENCE!>::invoke<!>, <!UNRESOLVED_REFERENCE!>::invoke<!>)<!>
|
||||
}
|
||||
|
||||
fun foo(vararg x: (Int)->Any): String = TODO() // (1.1)
|
||||
|
||||
+2
-2
@@ -22,7 +22,7 @@ class Case1<AT>(val x: AT) {
|
||||
|
||||
when (k) {
|
||||
is AT -> {
|
||||
k checkType { <!INAPPLICABLE_CANDIDATE!>check<!><AT>() }
|
||||
k checkType { <!NONE_APPLICABLE!>check<!><AT>() }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -31,7 +31,7 @@ class Case1<AT>(val x: AT) {
|
||||
val k: AT = x!!
|
||||
|
||||
if (k is AT) {
|
||||
k checkType { <!INAPPLICABLE_CANDIDATE!>check<!><AT>() }
|
||||
k checkType { <!NONE_APPLICABLE!>check<!><AT>() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
class Case1(val nothing: Nothing)
|
||||
|
||||
fun case1() {
|
||||
val res = Case1(<!INAPPLICABLE_CANDIDATE!>Nothing<!>())
|
||||
val res = <!INAPPLICABLE_CANDIDATE!>Case1<!>(<!INAPPLICABLE_CANDIDATE!>Nothing<!>())
|
||||
}
|
||||
|
||||
|
||||
@@ -17,5 +17,5 @@ class Case2 {
|
||||
|
||||
fun case2(c: Case2) {
|
||||
val testValue = c.data ?: throw IllegalArgumentException("data required")
|
||||
testValue checkType { <!INAPPLICABLE_CANDIDATE!>check<!><Nothing>() }
|
||||
testValue checkType { <!NONE_APPLICABLE!>check<!><Nothing>() }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user