alias List4[&T1] = list[&U3]; // No error. Moreover, "Go To Definition" suggests the def location of `&U3` (not a typo) is the location of the upper bound of `List3`.
This means that the type environment around this single alias definition is leaking. (And arond the previous one). This could lead to many bugs.
Originally posted by @jurgenvinju in #2791