some love for the testsuite; fixed regressions
This commit is contained in:
parent
566ee874cd
commit
24ae0c387f
19 changed files with 133 additions and 51 deletions
|
|
@ -786,7 +786,8 @@ proc semProcAnnotation(c: PContext, prc: PNode;
|
|||
result = semStmt(c, x)
|
||||
# since a proc annotation can set pragmas, we process these here again.
|
||||
# This is required for SqueakNim-like export pragmas.
|
||||
if result[namePos].kind == nkSym and result[pragmasPos].kind != nkEmpty:
|
||||
if result.kind in procDefs and result[namePos].kind == nkSym and
|
||||
result[pragmasPos].kind != nkEmpty:
|
||||
pragma(c, result[namePos].sym, result[pragmasPos], validPragmas)
|
||||
return
|
||||
|
||||
|
|
|
|||
|
|
@ -1270,9 +1270,11 @@ proc paramTypesMatchAux(m: var TCandidate, f, argType: PType,
|
|||
of isGeneric:
|
||||
inc(m.genericMatches)
|
||||
when true:
|
||||
if skipTypes(arg.typ, abstractVar-{tyTypeDesc}).kind == tyTuple:
|
||||
if arg.typ == nil:
|
||||
result = arg
|
||||
elif skipTypes(arg.typ, abstractVar-{tyTypeDesc}).kind == tyTuple:
|
||||
result = implicitConv(nkHiddenStdConv, f, copyTree(arg), m, c)
|
||||
elif arg.typ != nil and arg.typ.isEmptyContainer:
|
||||
elif arg.typ.isEmptyContainer:
|
||||
result = arg.copyTree
|
||||
result.typ = getInstantiatedType(c, arg, m, f)
|
||||
else:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue