   # TODO: should we support bare records?
   #   [a: 2 b: 3]
   if not ctx.shouldDefer()
-    form.tea = tupleOfTypes map _tea, elems
+    form.tea = markOrigin (tupleOfTypes map _tea, elems), form
 
   if ctx.assignTo()
     combinePatterns compiledElems

      for defined in def.definedNames
        addToMap auxiliaries, defined,
          deps: def.usedNames
          definition: def
    @_scope().auxiliaries = auxiliaries


printIr = (ast) ->
  walkIr ast, (ast) ->
    args = {}
    for name, node of ast when name not in ['js', 'ir']
      args[name] =
        if node?
          if name is 'type'
            (printType node)
          else
            printIr node
        else
          undefined
    args
