diff options
author | Araq <rumpf_a@web.de> | 2014-07-01 02:09:07 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2014-07-01 02:09:07 +0200 |
commit | 405cd7d1fbc92189e70763b8f22e888559214451 (patch) | |
tree | 0eca3f996d7dbc9c144fca45f699bb4487a6a168 | |
parent | 505b77cb6634aa0b03e6623aec2cab1d22d9105e (diff) | |
download | Nim-405cd7d1fbc92189e70763b8f22e888559214451.tar.gz |
fixes #904
-rw-r--r-- | compiler/semexprs.nim | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/semexprs.nim b/compiler/semexprs.nim index e6542a3fe..7f97124e1 100644 --- a/compiler/semexprs.nim +++ b/compiler/semexprs.nim @@ -792,6 +792,10 @@ proc semIndirectOp(c: PContext, n: PNode, flags: TExprFlags): PNode = n.flags.incl nfExprCall result = semOverloadedCallAnalyseEffects(c, n, nOrig, flags) if result == nil: return errorNode(c, n) + elif result.kind notin nkCallKinds: + # the semExpr() in overloadedCallOpr can even break this condition! + # See bug #904 of how to trigger it: + return result #result = afterCallActions(c, result, nOrig, flags) fixAbstractType(c, result) analyseIfAddressTakenInCall(c, result) |