diff options
author | Jacques Garrigue <garrigue@math.nagoya-u.ac.jp> | 2021-02-04 15:01:28 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-04 15:01:28 +0900 |
commit | 89aae98b22634d896b9d59f717decf2d3e7d4af3 (patch) | |
tree | e7ed3b4abe92e02ef338c0fa2c181cbeffb28a09 /parsing/depend.ml | |
parent | c97d56faa62575f0aff0a3a04ee28032f2b6f458 (diff) | |
download | ocaml-89aae98b22634d896b9d59f717decf2d3e7d4af3.tar.gz |
Allow to name existentials in pattern-matching (#9584)
Diffstat (limited to 'parsing/depend.ml')
-rw-r--r-- | parsing/depend.ml | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/parsing/depend.ml b/parsing/depend.ml index f513144b02..d72bf63b35 100644 --- a/parsing/depend.ml +++ b/parsing/depend.ml @@ -173,7 +173,11 @@ let rec add_pattern bv pat = | Ppat_interval _ | Ppat_constant _ -> () | Ppat_tuple pl -> List.iter (add_pattern bv) pl - | Ppat_construct(c, op) -> add bv c; add_opt add_pattern bv op + | Ppat_construct(c, opt) -> + add bv c; + add_opt + (fun bv (_,p) -> add_pattern bv p) + bv opt | Ppat_record(pl, _) -> List.iter (fun (lbl, p) -> add bv lbl; add_pattern bv p) pl | Ppat_array pl -> List.iter (add_pattern bv) pl |