Alphabetical sort wrapped intersection types for rendered diagnostics
This commit is contained in:
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: val/var reassignment and/or uninitialized variable usages based on CallsInPlace effect with wrong invocation kind
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: val/var reassignment and/or uninitialized variable usages based on nested CallsInPlace effects with wrong invocation kind
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+7
-8
@@ -1,6 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// !WITH_ENUM_CLASSES
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -9,16 +7,17 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: val/var reassignment and/or uninitialized variable usages with compelx control flow inside/outside lambda of contract function with CallsInPlace effect
|
||||
* HELPERS: enumClasses, contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1(value_1: _EnumClass?) {
|
||||
fun case_1(value_1: EnumClass?) {
|
||||
val value_2: Int
|
||||
|
||||
<!NON_EXHAUSTIVE_WHEN!>when<!> (value_1) {
|
||||
_EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
_EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
|
||||
_EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
|
||||
EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
|
||||
EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
|
||||
null -> funWithExactlyOnceCallsInPlace { value_2 = 5 }
|
||||
}
|
||||
|
||||
@@ -62,12 +61,12 @@ class case_3(value_1: Any?) {
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case_4(value_1: _EnumClassSingle?) {
|
||||
fun case_4(value_1: EnumClassSingle?) {
|
||||
var value_2: Int
|
||||
|
||||
funWithAtMostOnceCallsInPlace {
|
||||
when (value_1) {
|
||||
_EnumClassSingle.EVERYTHING -> {
|
||||
EnumClassSingle.EVERYTHING -> {
|
||||
funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
++value_2
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 4
|
||||
* DESCRIPTION: CallsInPlace contract functions with name shadowing and wrong invocation kind
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 5
|
||||
* DESCRIPTION: CallsInPlace contract functions with invalid lambda passing to function parameter.
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -10,6 +9,7 @@
|
||||
* DESCRIPTION: Check the lack of CallsInPlace effect on the lambda in the parentheses.
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
* ISSUES: KT-26229
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: val/var assignments using contract functions with CallsInPlace effect
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: Nested val/var assignments using contract functions with CallsInPlace effect
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+8
-9
@@ -1,6 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// !WITH_ENUM_CLASSES
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -9,17 +7,18 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: val/var assignments or subsequent usages with compelx control flow inside/outside lambda of contract function with CallsInPlace effect
|
||||
* HELPERS: enumClasses, contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1(value_1: _EnumClass?) {
|
||||
fun case_1(value_1: EnumClass?) {
|
||||
val value_2: Int
|
||||
|
||||
<!DEBUG_INFO_IMPLICIT_EXHAUSTIVE!>when (value_1) {
|
||||
_EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
_EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
|
||||
_EnumClass.WEST -> funWithExactlyOnceCallsInPlace { value_2 = 3 }
|
||||
_EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
|
||||
EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
|
||||
EnumClass.WEST -> funWithExactlyOnceCallsInPlace { value_2 = 3 }
|
||||
EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
|
||||
null -> funWithExactlyOnceCallsInPlace { value_2 = 5 }
|
||||
}<!>
|
||||
|
||||
@@ -63,12 +62,12 @@ class case_3(value_1: Any?) {
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case_4(value_1: _EnumClassSingle?) {
|
||||
fun case_4(value_1: EnumClassSingle?) {
|
||||
var value_2: Int
|
||||
|
||||
funWithAtMostOnceCallsInPlace {
|
||||
<!DEBUG_INFO_IMPLICIT_EXHAUSTIVE!>when (value_1) {
|
||||
_EnumClassSingle.EVERYTHING -> {
|
||||
EnumClassSingle.EVERYTHING -> {
|
||||
funWithExactlyOnceCallsInPlace { value_2 = 1 }
|
||||
++value_2
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, initialization
|
||||
* NUMBER: 4
|
||||
* DESCRIPTION: CallsInPlace contract functions with name shadowing
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (POSITIVE)
|
||||
@@ -9,6 +8,7 @@
|
||||
* DESCRIPTION: Check the lack of CallsInPlace effect on the lambda in the parentheses.
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
* ISSUES: KT-26229
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// FILE: contracts.kt
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: Using not allowed break and continue inside lambda of contract function
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,6 +1,5 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -9,6 +8,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: Unreachable code detection using contract function with CallsInPlace effect
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: Check for lack of unreachable code report when 'at most once' and 'unknown' invokations in CallsInPlace effect used.
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: Unreachable code detection using local functions or labdas combined with contract functions with CallsInPlace effect
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 4
|
||||
* DESCRIPTION: Unreachable code detection using nested contract functions with CallsInPlace effect
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 5
|
||||
* DESCRIPTION: Unreachable code detection using contract functions with complex control flow inside
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CONTRACT_FUNCTIONS
|
||||
// SKIP_TXT
|
||||
|
||||
/*
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, analysis, controlFlow, unreachableCode
|
||||
* NUMBER: 6
|
||||
* DESCRIPTION: Check for lack of unreachable code report when in complex control flow of contract function lambda not all branches are doing non-local return
|
||||
* HELPERS: contractFunctions
|
||||
*/
|
||||
|
||||
// TESTCASE NUMBER: 1
|
||||
|
||||
Reference in New Issue
Block a user