From c2d118cb75356f323ed457a588cc9734929f3ab7 Mon Sep 17 00:00:00 2001 From: Roman Artemev Date: Thu, 30 May 2019 15:13:14 +0300 Subject: [PATCH] [JS IR BE] Improve error reporting --- .../kotlin/ir/backend/js/transformers/irToJs/jsCode.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsCode.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsCode.kt index 04db72e31ed..129e975999a 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsCode.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsCode.kt @@ -11,6 +11,7 @@ import org.jetbrains.kotlin.ir.expressions.IrCall import org.jetbrains.kotlin.ir.expressions.IrConst import org.jetbrains.kotlin.ir.expressions.IrExpression import org.jetbrains.kotlin.ir.expressions.IrStringConcatenation +import org.jetbrains.kotlin.ir.util.render import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid import org.jetbrains.kotlin.ir.visitors.acceptVoid @@ -24,7 +25,7 @@ fun translateJsCode(call: IrCall, scope: JsScope): JsNode { fun foldString(expression: IrExpression): String { val builder = StringBuilder() expression.acceptVoid(object : IrElementVisitorVoid { - override fun visitElement(element: IrElement) = error("Parameter of js function must be compile time String constant") + override fun visitElement(element: IrElement) = error("Parameter of js function must be compile time String constant, not ${element.render()}") override fun visitConst(expression: IrConst) { builder.append(expression.kind.valueOf(expression))