[FIR] KT-44698: Print file:line:offset on K2 crash

^KT-44698 Fixed
This commit is contained in:
Nikolay Lunyak
2022-09-21 15:08:52 +03:00
committed by teamcity
parent bba5b87733
commit 2e9f9f987b
24 changed files with 363 additions and 147 deletions
@@ -5,6 +5,7 @@
package org.jetbrains.kotlin.analysis.api.fir.components
import org.jetbrains.kotlin.util.SourceCodeAnalysisException
import org.jetbrains.kotlin.analysis.api.calls.*
import org.jetbrains.kotlin.analysis.api.diagnostics.KtDiagnostic
import org.jetbrains.kotlin.analysis.api.diagnostics.KtNonBoundToPsiErrorDiagnostic
@@ -1223,7 +1224,10 @@ internal class KtFirCallResolver(
action()
} catch (e: Throwable) {
if (shouldIjPlatformExceptionBeRethrown(e)) throw e
buildErrorWithAttachment("Error during resolving call ${element::class.java.name}", cause = e) {
buildErrorWithAttachment(
"Error during resolving call ${element::class.java.name}",
cause = if (e is SourceCodeAnalysisException) e.cause else e,
) {
withPsiEntry("psi", element)
element.getOrBuildFir(firResolveSession)?.let { withFirEntry("fir", it) }
}