Variant of 62 where the disjunction amounts to the same thing, but
uses an implicit unification instead of explicit. Both 62 and 63
should behave the same: i.e. trim makes no changes.

Note that v2 gets this wrong.

-- a.cue --
#a: x: int
#b: ({x: 5} | {x: 7})
#b: #a
out: #b & {x: 5}
-- out/trim-v3 --
== a.cue
#a: x: int
#b: ({x: 5} | {x: 7})
#b: #a
out: #b & {x: 5}
-- diff/-out/trim-v3<==>+out/trim --
diff old new
--- old
+++ new
@@ -2,4 +2,4 @@
 #a: x: int
 #b: ({x: 5} | {x: 7})
 #b: #a
-out: #b & {}
+out: #b & {x: 5}
-- out/trim-v3-noshare --
== a.cue
#a: x: int
#b: ({x: 5} | {x: 7})
#b: #a
out: #b & {x: 5}
-- diff/-out/trim-v3-noshare<==>+out/trim --
diff old new
--- old
+++ new
@@ -2,4 +2,4 @@
 #a: x: int
 #b: ({x: 5} | {x: 7})
 #b: #a
-out: #b & {}
+out: #b & {x: 5}
-- out/trim --
== a.cue
#a: x: int
#b: ({x: 5} | {x: 7})
#b: #a
out: #b & {}
