K2: reproduce KT-58520 in FIR2IR (K2 fails with exception)

This commit is contained in:
Mikhail Glukhikh
2023-05-08 13:17:52 +02:00
committed by Space Team
parent d83f6a40fb
commit 8bc72cb2e5
6 changed files with 270 additions and 0 deletions
@@ -0,0 +1,31 @@
// TARGET_BACKEND: JVM
// WITH_STDLIB
private fun test(x: Long) =
countIssues {
+(spentTime lessEq 2 * 60)
+(spentTime lessEq id(2 * 60))
+(spentTime.select(2 * 60, x))
}
val spentTime = integer("spentTime")
fun integer(name: String) = Column()
fun <I> id(arg: I): I = arg
infix fun <T : Comparable<T>> Column.lessEq(t: T) = Expression()
fun <T : Comparable<T>> Column.select(t: T, r: T) = Expression()
class Expression
class Column
class ArgumentsBuilder {
val arguments = mutableListOf<Expression>()
operator fun Expression.unaryPlus() {
arguments.add(this)
}
}
private fun countIssues(restrictionsBuilder: ArgumentsBuilder.() -> Unit) {}