[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
+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>()}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user