         requiredElems++
 
     if hasSplat and requiredElems is 0
-      return malformed form, 'Matching with splat requires at least one element name'
+      return malformed ctx, form, 'Matching with splat requires at least one element name'
 
     compiledArgs = (for elem, i in elems
       [lhs, rhs] =

        index = names.indexOf type.name
        # TODO: attach to the syntax
        # if index is -1
        #   malformed param, 'Superclass param must occur in class\'s params'
        new QuantifiedVar index
      else
        type)

        kindOfType = expectedKind
      if not kindOfType
        # throw new Error "type name #{atom.symbol} was not defined" unless kind
        malformed ctx, atom, "This type name has not been defined"
        kindOfType = star
      atomicType atom.symbol, kindOfType
    else
