let mktrecord =
              function
              | Ast.TyCol (loc, (Ast.TyId (_, (Ast.IdLid (_, s)))),
                  (Ast.TyMut (_, t))) ->
                  (s, Mutable, (mkpolytype (ctyp t)), (mkloc loc))
              | Ast.TyCol (loc, (Ast.TyId (_, (Ast.IdLid (_, s)))), t) ->
                  (s, Immutable, (mkpolytype (ctyp t)), (mkloc loc))
              | _ -> assert false