diff options
| author | Jon French | 2018-08-23 14:45:04 +0100 |
|---|---|---|
| committer | Jon French | 2018-08-24 13:37:02 +0100 |
| commit | 64696a87293aad7d2ceb7eddf63f90f868482530 (patch) | |
| tree | 450d6f70ada43361b730634f4e5a1bbb8cdb3eb7 /src | |
| parent | b4e66ec5a79f7602567a29de5581b88e6053b758 (diff) | |
rewrite_defs_pat_lits: rewrite away fewer lits when generating ocaml, for cleaner generated code and reduced compiler warnings
Diffstat (limited to 'src')
| -rw-r--r-- | src/rewrites.ml | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/rewrites.ml b/src/rewrites.ml index e17976c3..7bc35681 100644 --- a/src/rewrites.ml +++ b/src/rewrites.ml @@ -3430,6 +3430,10 @@ let rewrite_no_strings (L_aux (lit, _)) = match lit with | L_string _ -> false | _ -> true +let rewrite_lit_ocaml (L_aux (lit, _)) = match lit with + | L_num _ | L_string _ | L_hex _ | L_bin _ | L_real _ | L_unit -> false + | _ -> true + let rewrite_defs_pat_lits rewrite_lit = let rewrite_pexp (Pat_aux (pexp_aux, annot) as pexp) = let guards = ref [] in @@ -4568,7 +4572,7 @@ let rewrite_defs_ocaml = [ ("mapping_builtins", rewrite_defs_mapping_patterns); ("rewrite_undefined", rewrite_undefined_if_gen false); ("rewrite_defs_vector_string_pats_to_bit_list", rewrite_defs_vector_string_pats_to_bit_list); - ("pat_lits", rewrite_defs_pat_lits rewrite_no_strings); + ("pat_lits", rewrite_defs_pat_lits rewrite_lit_ocaml); ("vector_concat_assignments", rewrite_vector_concat_assignments); ("tuple_assignments", rewrite_tuple_assignments); ("simple_assignments", rewrite_simple_assignments); |
