- | GrafiteAst.Destruct (loc, Some term) ->
- let metasenv,term = disambiguate_term context metasenv term in
- metasenv,GrafiteAst.Destruct(loc, Some term)
+ | GrafiteAst.Destruct (loc, Some terms) ->
+ let map term (metasenv, terms) =
+ let metasenv, term = disambiguate_term context metasenv term in
+ metasenv, term :: terms
+ in
+ let metasenv, terms = List.fold_right map terms (metasenv, []) in
+ metasenv, GrafiteAst.Destruct(loc, Some terms)