If two types don't have a strict super/subtype relationship they will currently intersect to the empty type. For example, the intersection of (Pairof <any> (Listof <any>)) and (Listof <number>) results in (U)where it should ideally be (Pairof <number> (Listof <number>)).
This may have to be resolved on a per-type basis. The list example could be resolved by intersecting the car and cdr of a pair separately.
If two types don't have a strict super/subtype relationship they will currently intersect to the empty type. For example, the intersection of
(Pairof <any> (Listof <any>))
and(Listof <number>)
results in(U)
where it should ideally be(Pairof <number> (Listof <number>))
.This may have to be resolved on a per-type basis. The list example could be resolved by intersecting the car and cdr of a pair separately.