From 28405e4a4f8e996b5f80a1df2cabb9aa35d66971 Mon Sep 17 00:00:00 2001 From: Jon French Date: Thu, 23 Aug 2018 16:38:39 +0100 Subject: support for P_or and P_not patterns in rewrite_defs_mapping_patterns --- src/rewrites.ml | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src') diff --git a/src/rewrites.ml b/src/rewrites.ml index 218625e1..8a1131e7 100644 --- a/src/rewrites.ml +++ b/src/rewrites.ml @@ -3409,6 +3409,13 @@ let rewrite_defs_mapping_patterns = let pat1, guards, expr = rewrite_pat env (pat1, guards, expr) in let pat2, guards, expr = rewrite_pat env (pat2, guards, expr) in P_aux (P_cons (pat1, pat2), p_annot), guards, expr + | P_aux (P_or (pat1, pat2), p_annot) -> + let pat1, guards, expr = rewrite_pat env (pat1, guards, expr) in + let pat2, guards, expr = rewrite_pat env (pat2, guards, expr) in + P_aux (P_or (pat1, pat2), p_annot), guards, expr + | P_aux (P_not p, p_annot) -> + let p', guards, expr = rewrite_pat env (p, guards, expr) in + P_aux (P_not p', p_annot), guards, expr | P_aux (P_id _, _) | P_aux (P_lit _, _) | P_aux (P_wild, _) -> pat, guards, expr -- cgit v1.2.3