summaryrefslogtreecommitdiff
path: root/push-binary-libs.sh
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2014-01-19 23:00:09 +0300
committerEugene Burmako <xeno.by@gmail.com>2014-01-20 09:48:12 +0300
commit936d60a2621088ba463a44c2f2d6450986022169 (patch)
tree4137839890784150dfc2f18c308ed1ae33a10a42 /push-binary-libs.sh
parent6a6b485fe98890f73a03753e3981be5fa580ed02 (diff)
downloadscala-936d60a2621088ba463a44c2f2d6450986022169.tar.gz
scala-936d60a2621088ba463a44c2f2d6450986022169.tar.bz2
scala-936d60a2621088ba463a44c2f2d6450986022169.zip
SI-8158 compiler hangs printing out fancy types
Apparently, even though the compiler has safeguards against infinite type printouts, having a depth counter, we didn’t account for the cases when printouts are both self-referential and self-multiplying. For one, SI-8158 provides an example of such a type, which is a structural type that refers to itself twice in return types of its methods. At first, printing such a type would go deeper and deeper, but then it will hit the depth limit and start multiply indefinitely. This commit fixes this particular problem by recognizing self-references as this.type’s and printing them out as such. The subsequent commit will introduce a more general facility.
Diffstat (limited to 'push-binary-libs.sh')
0 files changed, 0 insertions, 0 deletions