summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorLemonBoy <LemonBoy@users.noreply.github.com>2018-09-08 10:38:18 +0200
committerAndreas Rumpf <rumpf_a@web.de>2018-09-08 10:38:18 +0200
commit3f16711254bffaa48dcb9ef0ac1cabc2fad7c5d7 (patch)
tree666adbb1f654b4f4cf2a313822d76235c1d5cdec
parent91b37311d9974ae30745946a52c9a971da1616f4 (diff)
downloadNim-3f16711254bffaa48dcb9ef0ac1cabc2fad7c5d7.tar.gz
Fix insert/delete for JS (#8915)
Fixes #8914
-rw-r--r--lib/system.nim4
-rw-r--r--tests/js/t8914.nim12
2 files changed, 14 insertions, 2 deletions
diff --git a/lib/system.nim b/lib/system.nim
index a7e215168..e9ada8c43 100644
--- a/lib/system.nim
+++ b/lib/system.nim
@@ -1552,7 +1552,7 @@ proc delete*[T](x: var seq[T], i: Natural) {.noSideEffect.} =
     defaultImpl()
   else:
     when defined(js):
-      {.emit: "`x`[`x`_Idx].splice(`i`, 1);".}
+      {.emit: "`x`.splice(`i`, 1);".}
     else:
       defaultImpl()
 
@@ -1574,7 +1574,7 @@ proc insert*[T](x: var seq[T], item: T, i = 0.Natural) {.noSideEffect.} =
   else:
     when defined(js):
       var it : T
-      {.emit: "`x`[`x`_Idx].splice(`i`, 0, `it`);".}
+      {.emit: "`x`.splice(`i`, 0, `it`);".}
     else:
       defaultImpl()
   x[i] = item
diff --git a/tests/js/t8914.nim b/tests/js/t8914.nim
new file mode 100644
index 000000000..ff716b42a
--- /dev/null
+++ b/tests/js/t8914.nim
@@ -0,0 +1,12 @@
+discard """
+  output: '''
+@[42]
+@[24, 42]
+'''
+"""
+
+var x = @[42,4242]
+x.delete(1)
+echo x
+x.insert(24)
+echo x