This commit is contained in:
Zahary Karadjov
2016-11-30 23:00:44 +02:00
parent 5947403e84
commit bf612a7f19
2 changed files with 15 additions and 3 deletions

View File

@@ -1358,9 +1358,10 @@ proc paramTypesMatchAux(m: var TCandidate, f, argType: PType,
return argSemantized
if argType.kind == tyStatic:
if m.callee.kind == tyGenericBody and tfGenericTypeParam notin argType.flags:
result = newNodeIT(nkType, argOrig.info, makeTypeFromExpr(c, arg))
return
if m.callee.kind == tyGenericBody and
argType.len == 0 and
tfGenericTypeParam notin argType.flags:
return newNodeIT(nkType, argOrig.info, makeTypeFromExpr(c, arg))
else:
var evaluated = c.semTryConstExpr(c, arg)
if evaluated != nil:

11
tests/generics/t4884.nim Normal file
View File

@@ -0,0 +1,11 @@
type
Vec*[N: static[int], T] = object
arr*: array[N, T]
Mat*[N,M: static[int], T] = object
arr*: array[N, Vec[M,T]]
var m : Mat[3,3,float]
var strMat : Mat[m.N, m.M, string]
var lenMat : Mat[m.N, m.M, int]