diff options
Diffstat (limited to 'compiler/semexprs.nim')
-rw-r--r-- | compiler/semexprs.nim | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/semexprs.nim b/compiler/semexprs.nim index 2b74846bd..118ebbcc1 100644 --- a/compiler/semexprs.nim +++ b/compiler/semexprs.nim @@ -2598,9 +2598,10 @@ proc semExpr(c: PContext, n: PNode, flags: TExprFlags = {}): PNode = result = semTemplateExpr(c, n, s, flags) of skType: # XXX think about this more (``set`` procs) - if n.len == 2: + let ambig = contains(c.ambiguousSymbols, s.id) + if not (n[0].kind in {nkClosedSymChoice, nkOpenSymChoice, nkIdent} and ambig) and n.len == 2: result = semConv(c, n) - elif contains(c.ambiguousSymbols, s.id) and n.len == 1: + elif ambig and n.len == 1: errorUseQualifier(c, n.info, s) elif n.len == 1: result = semObjConstr(c, n, flags) |