scala/scala — pull request #1703 by retronym (2012-12-04 12:58:32+00:00)
Title: SI-6528 Avoid loop in getClassParts.

Carefully crafted types can lead to an endless stream of
distinct parts, differing only in different instantiations
of an abstract type.

This commit substitutes abstract types with their upper bounds
before determining if a type has already been seen.

Review for correctness, completeness, and performance by @adriaanm.