List<Type> erasedSupertypes(Type t) {
            ListBuffer<Type> buf = lb();
            for (Type sup : closure(t)) {
                if (sup.tag == TYPEVAR) {
                    buf.append(sup);
                } else {
                    buf.append(erasure(sup));
                }
            }
            return buf.toList();
        }