| // LANGUAGE: +MultiDollarInterpolation |
| |
| // TARGET_BACKEND: JS_IR |
| |
| // ISSUE: KT-69062 |
| |
| const val decrement = "result--;" |
| |
| // interpolation prefix length: 1, 2, 4, 8 |
| // interpolation kinds: of simple identifier, of identifier in backticks, of arbitrary expression |
| // string literal kinds: single-line, multi-line |
| fun box(): String { |
| var result = 4 * 3 * 2 |
| js($"$decrement") |
| js($$"$$decrement") |
| js($$$$"$$$$decrement") |
| js($$$$$$$$"$$$$$$$$decrement") |
| js($"$`decrement`") |
| js($$"$$`decrement`") |
| js($$$$"$$$$`decrement`") |
| js($$$$$$$$"$$$$$$$$`decrement`") |
| js($"${"" + decrement}") |
| js($$"$${"" + decrement}") |
| js($$$$"$$$${"" + decrement}") |
| js($$$$$$$$"$$$$$$$${"" + decrement}") |
| js($"""$decrement""") |
| js($$"""$$decrement""") |
| js($$$$"""$$$$decrement""") |
| js($$$$$$$$"""$$$$$$$$decrement""") |
| js($"""$`decrement`""") |
| js($$"""$$`decrement`""") |
| js($$$$"""$$$$`decrement`""") |
| js($$$$$$$$"""$$$$$$$$`decrement`""") |
| js($"""${"" + decrement}""") |
| js($$"""$${"" + decrement}""") |
| js($$$$"""$$$${"" + decrement}""") |
| js($$$$$$$$"""$$$$$$$${"" + decrement}""") |
| return if (result == 0) "OK" else "NOT OK: result ($result) != 0" |
| } |