let rec list_of_ctyp x acc =
match x with
| Ast.TyNil _ -> acc
| Ast.TyAmp (_, x, y) | Ast.TyCom (_, x, y) |
Ast.TySta (_, x, y) | Ast.TySem (_, x, y) |
Ast.TyAnd (_, x, y) | Ast.TyOr (_, x, y) ->
list_of_ctyp x (list_of_ctyp y acc)
| x -> x :: acc