diff options
author | Martin Odersky <odersky@gmail.com> | 2016-03-07 16:13:06 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-03-07 16:13:06 +0100 |
commit | cf2fed8138cb399beb7d1249227107b943fe3905 (patch) | |
tree | 1d403cb8dee3034afb0fcd6b1329138b5620bf03 | |
parent | ff27c8c12f1f584718acb8799b2609df952751b0 (diff) | |
download | dotty-cf2fed8138cb399beb7d1249227107b943fe3905.tar.gz dotty-cf2fed8138cb399beb7d1249227107b943fe3905.tar.bz2 dotty-cf2fed8138cb399beb7d1249227107b943fe3905.zip |
Address reviewer comments.
-rw-r--r-- | src/dotty/tools/dotc/transform/LambdaLift.scala | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/dotty/tools/dotc/transform/LambdaLift.scala b/src/dotty/tools/dotc/transform/LambdaLift.scala index ef7a110b1..3ef684e55 100644 --- a/src/dotty/tools/dotc/transform/LambdaLift.scala +++ b/src/dotty/tools/dotc/transform/LambdaLift.scala @@ -206,14 +206,11 @@ class LambdaLift extends MiniPhase with IdentityDenotTransformer { thisTransform // Constructors and methods nested inside traits get the free variables // of the enclosing trait or class. // Conversely, local traits do not get free variables. - if (!enclosure.is(Trait)) { - val ss = symSet(free, enclosure) - if (!ss(sym)) { - ss += sym + if (!enclosure.is(Trait)) + if (symSet(free, enclosure).add(sym)) { changedFreeVars = true ctx.log(i"$sym is free in $enclosure") } - } } if (intermediate.isRealClass) intermediate else if (enclosure.isRealClass) enclosure |