Fix tests/parallel/tguard2.nim

This commit is contained in:
Zahary Karadjov
2020-03-30 03:47:02 +03:00
committed by Andreas Rumpf
parent 2b66d66567
commit d374c6373b
3 changed files with 5 additions and 3 deletions

View File

@@ -63,7 +63,7 @@ type
# to the user.
efWantStmt, efAllowStmt, efDetermineType, efExplain,
efAllowDestructor, efWantValue, efOperand, efNoSemCheck,
efNoEvaluateGeneric, efInCall, efFromHlo,
efNoEvaluateGeneric, efInCall, efFromHlo, efNoSem2Check,
efNoUndeclared
# Use this if undeclared identifiers should not raise an error during
# overload resolution.

View File

@@ -2082,7 +2082,7 @@ proc tryExpr(c: PContext, n: PNode, flags: TExprFlags = {}): PNode =
var err: string
try:
result = semExpr(c, n, flags)
if result != nil:
if result != nil and efNoSem2Check notin flags:
trackStmt(c, c.module, result, isTopLevel = false)
if c.config.errorCounter != oldErrorCount:
result = nil

View File

@@ -1937,7 +1937,9 @@ proc localConvMatch(c: PContext, m: var TCandidate, f, a: PType,
var call = newNodeI(nkCall, arg.info)
call.add(f.n.copyTree)
call.add(arg.copyTree)
result = c.semTryExpr(c, call)
# XXX: This would be much nicer if we don't use `semTryExpr` and
# instead we directly search for overloads with `resolveOverloads`:
result = c.semTryExpr(c, call, {efNoSem2Check})
if result != nil:
if result.typ == nil: return nil