FIR2IR: make sources of qualified accesses & calls closer to PSI2IR

#KT-60111 Fixed
This commit is contained in:
Mikhail Glukhikh
2023-10-02 13:55:31 +02:00
committed by Space Team
parent 7c66a3dc65
commit b7b7dd1000
18 changed files with 88 additions and 69 deletions
@@ -1,5 +1,5 @@
/exceptionFromInterpreter.kt:(197,200): error: Cannot evaluate constant expression: Exception java.lang.ArithmeticException: / by zero
/exceptionFromInterpreter.kt:(195,200): error: Cannot evaluate constant expression: Exception java.lang.ArithmeticException: / by zero
/exceptionFromInterpreter.kt:(239,254): error: Cannot evaluate constant expression: Exception java.lang.IllegalArgumentException: marginPrefix must be non-blank string.
/exceptionFromInterpreter.kt:(305,308): error: Cannot evaluate constant expression: Exception java.lang.ArithmeticException: / by zero
/exceptionFromInterpreter.kt:(303,308): error: Cannot evaluate constant expression: Exception java.lang.ArithmeticException: / by zero
@@ -5,10 +5,10 @@
// !DIAGNOSTICS: -DIVISION_BY_ZERO
// WITH_STDLIB
const val divideByZero = 1 <!EVALUATION_ERROR!>/ 0<!>
const val divideByZero = <!EVALUATION_ERROR!>1 / 0<!>
const val trimMarginException = "123".<!EVALUATION_ERROR!>trimMargin(" ")<!>
annotation class A(val i: Int, val b: Int)
@A(1 <!EVALUATION_ERROR!>/ 0<!>, 2)
@A(<!EVALUATION_ERROR!>1 / 0<!>, 2)
fun foo() {}
@@ -1,3 +1,3 @@
/recursionAccess.kt:(180,194): error: Cannot evaluate constant expression: Exception java.lang.StackOverflowError
/recursionAccess.kt:(178,194): error: Cannot evaluate constant expression: Exception java.lang.StackOverflowError
/recursionAccess.kt:(280,283): error: Cannot evaluate constant expression: Exception java.lang.NullPointerException
/recursionAccess.kt:(267,283): error: Cannot evaluate constant expression: Exception java.lang.NullPointerException
@@ -5,11 +5,11 @@
// WITH_STDLIB
object A {
const val recursive1: Int = 1 <!EVALUATION_ERROR!>+ B.recursive2<!>
const val recursive1: Int = <!EVALUATION_ERROR!>1 + B.recursive2<!>
}
class B {
companion object {
const val recursive2: Int = A.recursive1 <!EVALUATION_ERROR!>+ 2<!>
const val recursive2: Int = <!EVALUATION_ERROR!>A.recursive1 + 2<!>
}
}