summary refs log tree commit diff stats
path: root/compiler
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2014-08-10 23:55:06 +0200
committerAndreas Rumpf <rumpf_a@web.de>2014-08-10 23:55:06 +0200
commit94131e1e564ab6418b6bef66d8089259d2595079 (patch)
treeb0c16efc0a377a618938cd9e094c91ee8f051126 /compiler
parenta2ec3c91f1e32d61510d1e4a387e125291d2deea (diff)
parent74213fcb9c5387fe0bcdde5d743afcd3b7eb31ba (diff)
downloadNim-94131e1e564ab6418b6bef66d8089259d2595079.tar.gz
Merge pull request #1467 from Varriount/fix-1424
Fix #1424
Diffstat (limited to 'compiler')
-rw-r--r--compiler/semexprs.nim4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/semexprs.nim b/compiler/semexprs.nim
index 7e97eb293..47c83bcc8 100644
--- a/compiler/semexprs.nim
+++ b/compiler/semexprs.nim
@@ -185,13 +185,15 @@ proc isCastable(dst, src: PType): bool =
   #  castableTypeKinds = {tyInt, tyPtr, tyRef, tyCstring, tyString, 
   #                       tySequence, tyPointer, tyNil, tyOpenArray,
   #                       tyProc, tySet, tyEnum, tyBool, tyChar}
+  if skipTypes(dst, abstractInst-{tyOpenArray}).kind == tyOpenArray:
+    return false
   var dstSize, srcSize: BiggestInt
 
   dstSize = computeSize(dst)
   srcSize = computeSize(src)
   if dstSize < 0: 
     result = false
-  elif srcSize < 0: 
+  elif srcSize < 0:
     result = false
   elif not typeAllowed(dst, skParam):
     result = false