summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--compiler/sempass2.nim5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/sempass2.nim b/compiler/sempass2.nim
index f0d6c6c7a..5eb464bb8 100644
--- a/compiler/sempass2.nim
+++ b/compiler/sempass2.nim
@@ -1065,7 +1065,10 @@ proc track(tracked: PEffects, n: PNode) =
     for i in 0..<n.len:
       track(tracked, n[i])
       if tracked.owner.kind != skMacro:
-        createTypeBoundOps(tracked, n[i].typ, n.info)
+        if n[i].kind == nkExprColonExpr:
+          createTypeBoundOps(tracked, n[i][0].typ, n.info)
+        else:
+          createTypeBoundOps(tracked, n[i].typ, n.info)
       checkForSink(tracked.config, tracked.owner, n[i])
   of nkPragmaBlock:
     let pragmaList = n[0]