// Triggering recomputation of disjunctions on each branch results
// in exponential run time. Ensure this does not happen.
-- in.cue --
x: a0: {}
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int
x: [_]: f: *1 | int

x: {
	a0: {}
	@test(eq, {a0: {f: *1 | int}})
}
-- out/eval/stats --
Leaks:  0
Freed:  82
Reused: 72
Allocs: 10
Retain: 0

Unifications: 4
Conjuncts:    143
Disjuncts:    78
