diff options
author | Paul Phillips <paulp@improving.org> | 2012-09-12 12:02:07 -0700 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-09-12 12:17:09 -0700 |
commit | 6fbb4ac42a3fa00689a6c3bbde2be273b7c36b2d (patch) | |
tree | e2e1482342e5f07f63bf7945c340ae82867ef07a /pull-binary-libs.sh | |
parent | 7e1f10d228c1f0c47db4f2136dda4b5690f43445 (diff) | |
download | scala-6fbb4ac42a3fa00689a6c3bbde2be273b7c36b2d.tar.gz scala-6fbb4ac42a3fa00689a6c3bbde2be273b7c36b2d.tar.bz2 scala-6fbb4ac42a3fa00689a6c3bbde2be273b7c36b2d.zip |
Fix for SI-6367, exponential time in inference.
This pathology is not new - it can be witnessed in 2.9,
where compiling the test case enclosed with this ticket with
-Yinfer-debug will print a line with (pinky to lips) one million
type parameters. 1048576 actually, aka 2^20. But in 2.9 we were
somehow getting away with creating the list, presumably by not
spending much time looking at it. Somewhere between there and M1,
that changed.
I cut it off at the knees - don't create a list of one million
upper bound constraints when 1 will suffice. It would not be too
surprising if this proves to be a boon for performance.
Diffstat (limited to 'pull-binary-libs.sh')
0 files changed, 0 insertions, 0 deletions