scala/scala — pull request #847 by retronym (2012-07-07 12:06:38+00:00)
Title: SI-6028 Avoid needless symbol renaming in lambdalift

Preserve names of all referenced free vars. This is achieved
in a slightly roundabout manner:

1. they are renamed (as before this change)
2. the code that references them is lifted
3. the original names are restored.

The resulting natural beauty is evident in the [diff of t6028.check](https://github.com/retronym/scala/commit/3dc8121#diff-3).

This subsumes the treatment in 0e170e4 that ensured named parameter
calls cannot see mangled names; pos/t6028 confirms as much.

Review by @lrytz