From bd32255f90f0789db10865ce5b5565c3af5b033b Mon Sep 17 00:00:00 2001 From: Dominik Picheta Date: Thu, 14 Aug 2014 19:03:31 +0100 Subject: [PATCH] Fixes #1158. --- lib/pure/asyncdispatch.nim | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/pure/asyncdispatch.nim b/lib/pure/asyncdispatch.nim index e1837b0ea7..5597acf6fa 100644 --- a/lib/pure/asyncdispatch.nim +++ b/lib/pure/asyncdispatch.nim @@ -27,7 +27,6 @@ export TPort, TSocketFlags ## **Note:** This module is still largely experimental. -# TODO: Discarded void PFutures need to be checked for exception. # TODO: ``except`` statement (without `try`) does not work. # TODO: Multiple exception names in a ``except`` don't work. # TODO: The effect system (raises: []) has trouble with my try transformation. @@ -1003,7 +1002,7 @@ proc processBody(node, retFutureSym: PNimrodNode, of nnkIdent: # await x result = newNimNode(nnkYieldStmt, node).add(node[1]) # -> yield x - of nnkCall: + of nnkCall, nnkCommand: # await foo(p, x) var futureValue: PNimrodNode result.createVar("future" & $node[1][0].toStrLit, node[1], futureValue, @@ -1020,7 +1019,7 @@ proc processBody(node, retFutureSym: PNimrodNode, of nnkVarSection, nnkLetSection: case node[0][2].kind of nnkCommand: - if node[0][2][0].ident == !"await": + if node[0][2][0].kind == nnkIdent and node[0][2][0].ident == !"await": # var x = await y var newVarSection = node # TODO: Should this use copyNimNode? result.createVar("future" & $node[0][0].ident, node[0][2][1],