- let (capture_variables, rhs) = eat_branch lpsno ty pat in
- Ast.Pattern (name, Some (ctor_puri !j), capture_variables), rhs
+ let name,(capture_variables,rhs) =
+ match output_type with
+ `Term -> name, eat_branch lpsno ty pat
+ | `Pattern -> "_", ([], k pat)
+ in
+ Ast.Pattern (name, Some (ctor_puri !j), capture_variables), rhs