[Wasm] Don't use by lazy inside Throwable

This commit is contained in:
Zalim Bashorov
2023-03-30 20:42:15 +02:00
parent 67357fa5d4
commit 1a8a4fa65d
5 changed files with 12 additions and 7 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
// TARGET_BACKEND: WASM // TARGET_BACKEND: WASM
// WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 72_224 // WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 66_687
// WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_517 // WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_517
// FILE: test.kt // FILE: test.kt
+1 -1
View File
@@ -1,6 +1,6 @@
// TARGET_BACKEND: WASM // TARGET_BACKEND: WASM
// WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 72_549 // WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 67_012
// WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_458 // WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_458
fun box(): String { fun box(): String {
+1 -1
View File
@@ -1,6 +1,6 @@
// TARGET_BACKEND: WASM // TARGET_BACKEND: WASM
// WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 84_364 // WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 78_710
// WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_956 // WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_956
// FILE: test.kt // FILE: test.kt
+1 -1
View File
@@ -1,6 +1,6 @@
// TARGET_BACKEND: WASM // TARGET_BACKEND: WASM
// WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 72_275 // WASM_DCE_EXPECTED_OUTPUT_SIZE: wasm 66_738
// WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_389 // WASM_DCE_EXPECTED_OUTPUT_SIZE: mjs 6_389
fun box() = "OK" fun box() = "OK"
@@ -24,9 +24,14 @@ public open class Throwable(open val message: String?, open val cause: kotlin.Th
private val jsStack: ExternalInterfaceType = captureStackTrace() private val jsStack: ExternalInterfaceType = captureStackTrace()
internal val stack: String by lazy { private lateinit var _stack: String
jsToKotlinStringAdapter(jsStack).removePrefix("Error\n") internal val stack: String
} get() {
if (!::_stack.isInitialized) {
_stack = jsToKotlinStringAdapter(jsStack).removePrefix("Error\n")
}
return _stack
}
internal var suppressedExceptionsList: MutableList<Throwable>? = null internal var suppressedExceptionsList: MutableList<Throwable>? = null