summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorcooldome <ariabushenko@gmail.com>2020-09-24 21:21:14 +0100
committerGitHub <noreply@github.com>2020-09-24 22:21:14 +0200
commit68ec7a018b85e978c437e776dfcc183cf7b79057 (patch)
tree486edc99c9578b48a88f28d7dfe27e18eac72275
parente3b5f80a890428a0c9b5c2bdd7a3205d79946957 (diff)
downloadNim-68ec7a018b85e978c437e776dfcc183cf7b79057.tar.gz
Revert "fix #15035 (#15236)" (#15408)
This reverts commit f8c48fc1863a243718acf86b699baed1a5c1512e.
-rw-r--r--compiler/injectdestructors.nim5
-rw-r--r--tests/arc/t14383.nim19
2 files changed, 3 insertions, 21 deletions
diff --git a/compiler/injectdestructors.nim b/compiler/injectdestructors.nim
index 9d1f43595..28f2c93f1 100644
--- a/compiler/injectdestructors.nim
+++ b/compiler/injectdestructors.nim
@@ -699,9 +699,8 @@ proc p(n: PNode; c: var Con; s: var Scope; mode: ProcessMode): PNode =
     elif n.kind in {nkObjDownConv, nkObjUpConv}:
       result = copyTree(n)
       result[0] = p(n[0], c, s, sinkArg)
-    elif n.typ == nil or n.typ.skipTypes({tyGenericInst, tyAlias, tySink, tyVar}).kind == tyOpenArray:
-      # 'raise X' can be part of a 'case' expression. Deal with it here.
-      # openarrays require perfect forwarding
+    elif n.typ == nil:
+      # 'raise X' can be part of a 'case' expression. Deal with it here:
       result = p(n, c, s, normal)
     else:
       # copy objects that are not temporary but passed to a 'sink' parameter
diff --git a/tests/arc/t14383.nim b/tests/arc/t14383.nim
index 78afc58e2..f112a1a6c 100644
--- a/tests/arc/t14383.nim
+++ b/tests/arc/t14383.nim
@@ -3,7 +3,6 @@ discard """
   output: '''
 hello
 hello
-@[4, 3, 2, 1]
 @["a", "b"]
 '''
 """
@@ -14,22 +13,6 @@ var val = parseMinValue()
 if val.kind == minDictionary:
   echo val
 
-
-#------------------------------------------------------------------------------
-# Issue #15035
-#------------------------------------------------------------------------------
-
-proc countRun(lst: sink openArray[int]): int =
-  discard
-
-proc timSort(lst: var openArray[int]) = 
-  let run = countRun(lst)
-
-var a = @[4, 3, 2, 1]
-timSort(a)
-echo a
-
-
 #------------------------------------------------------------------------------
 # Issue #15238
 #------------------------------------------------------------------------------
@@ -50,4 +33,4 @@ echo x
 #------------------------------------------------------------------------------
 
 import std/os
-discard getFileInfo(".")
\ No newline at end of file
+discard getFileInfo(".")