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