From 96e6ba8bdd8375ba6b479e5e346c069e014355e7 Mon Sep 17 00:00:00 2001 From: Carlos Ballesteros Velasco Date: Fri, 19 May 2017 23:48:18 +0200 Subject: [PATCH] Somehow g++ doesn't like \u0000 (it generates a \1 ??), so let's use \0 --- jtransc-main/test/JsTest.kt | 10 +++++----- jtransc-main/test/javatest/lang/StringsTest.java | 2 +- jtransc-utils/src/com/jtransc/text/escape.kt | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/jtransc-main/test/JsTest.kt b/jtransc-main/test/JsTest.kt index 9391d007..8866b345 100644 --- a/jtransc-main/test/JsTest.kt +++ b/jtransc-main/test/JsTest.kt @@ -46,6 +46,11 @@ import testservice.test.TestServiceJs2 class JsTest : _Base() { override val DEFAULT_TARGET = JsTarget() + @Test fun testBig() = testClass(minimize = false, log = false) + @Test fun testBigMin() = testClass(minimize = true, log = false) + @Test fun testBigIO() = testClass(minimize = true, log = false, treeShaking = true) + @Test fun testProcess() = testClass(minimize = true, log = false, treeShaking = true) + @Test fun testJTranscBug110() = testClass(minimize = false, log = false, treeShaking = true) @Test fun testScriptEngine() = testClass(minimize = false, log = false, treeShaking = true) @@ -153,11 +158,6 @@ class JsTest : _Base() { OK """, minimize = true) - @Test fun testBig() = testClass(minimize = false, log = false) - @Test fun testBigMin() = testClass(minimize = true, log = false) - @Test fun testBigIO() = testClass(minimize = true, log = false, treeShaking = true) - @Test fun testProcess() = testClass(minimize = true, log = false, treeShaking = true) - @Test fun testNumberFormatTest2() = testClass(minimize = false, log = false) @Test fun testTryFinallyCheck() = testClass(minimize = false, log = false) diff --git a/jtransc-main/test/javatest/lang/StringsTest.java b/jtransc-main/test/javatest/lang/StringsTest.java index 96df8b84..aebc8142 100644 --- a/jtransc-main/test/javatest/lang/StringsTest.java +++ b/jtransc-main/test/javatest/lang/StringsTest.java @@ -79,7 +79,7 @@ private static void extendedTest() { } static public void zeroTest() { - String a = "abcdefg\0A\0B\0C\0"; + String a = "STRZERO:abcdefg\0A\0B\0C\0\u0000\u0001\u0002\u0003\uffff\u7f7f\u007f\u00ff"; JTranscConsole.log("StringsTest.zeroTest:"); JTranscConsole.log(a.length()); for (int n = 0; n < a.length(); n++) JTranscConsole.log((int)a.charAt(n)); diff --git a/jtransc-utils/src/com/jtransc/text/escape.kt b/jtransc-utils/src/com/jtransc/text/escape.kt index 65763cda..349ae483 100644 --- a/jtransc-utils/src/com/jtransc/text/escape.kt +++ b/jtransc-utils/src/com/jtransc/text/escape.kt @@ -38,6 +38,7 @@ fun String.uescape(): String { for (n in 0 until this.length) { val c = this[n] when (c) { + 0.toChar() -> out.append("\\0") '\\' -> out.append("\\\\") '"' -> out.append("\\\"") '\n' -> out.append("\\n")