1 module Pass_union_atype_298 =
2 (* The key calculation in union would cause the outer subtree to have *)
3 (* an atype of %r{a/(/|/)}, which is wrong since the two subtrees in *)
4 (* the union do not contribute to the key of the outer subtree *)
5 (* The tree produced by this lens has schema *)
6 (* { /a/ ({ = /b/ }|{}) } *)
7 (* which is prefectly legal *)
8 let lns = [ key /a/ . ([ store /b/] | del /c/ "c") ]
10 (* Local Variables: *)