aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-03-07 16:13:06 +0100
committerMartin Odersky <odersky@gmail.com>2016-03-07 16:13:06 +0100
commitcf2fed8138cb399beb7d1249227107b943fe3905 (patch)
tree1d403cb8dee3034afb0fcd6b1329138b5620bf03
parentff27c8c12f1f584718acb8799b2609df952751b0 (diff)
downloaddotty-cf2fed8138cb399beb7d1249227107b943fe3905.tar.gz
dotty-cf2fed8138cb399beb7d1249227107b943fe3905.tar.bz2
dotty-cf2fed8138cb399beb7d1249227107b943fe3905.zip
Address reviewer comments.
-rw-r--r--src/dotty/tools/dotc/transform/LambdaLift.scala7
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