blob: edd59167659ea6d17713153b022ec7793f64fea4 [file]
// LANGUAGE: +NameBasedDestructuring +DeprecateNameMismatchInShortDestructuringWithParentheses +EnableNameBasedDestructuringShortForm
// FIR_IDENTICAL
// RUN_PIPELINE_TILL: BACKEND
//KT-2643 Support multi-declarations in Data-Flow analysis
package n
class C {
operator fun component1() = 1
operator fun component2() = 2
}
fun test1(c: C) {
val [a, b] = c
}
fun test2(c: C) {
val [a, b] = c
a + 3
}
fun test3(c: C) {
var [a, b] = c
a = 3
}
fun test4(c: C) {
var [a, b] = c
a = 3
a + 1
}
/* GENERATED_FIR_TAGS: additiveExpression, assignment, classDeclaration, destructuringDeclaration, functionDeclaration,
integerLiteral, localProperty, operator, propertyDeclaration */