diff options
Diffstat (limited to 'src/dotty/tools')
-rw-r--r-- | src/dotty/tools/dotc/transform/TreeTransform.scala | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/transform/TreeTransform.scala b/src/dotty/tools/dotc/transform/TreeTransform.scala index 3bd005991..0aba1e213 100644 --- a/src/dotty/tools/dotc/transform/TreeTransform.scala +++ b/src/dotty/tools/dotc/transform/TreeTransform.scala @@ -486,7 +486,14 @@ object TreeTransforms { var nxCopied = false var result = info.transformers var resultNX = info.nx - var i = mutationPlan(0) // if TreeTransform.transform() method didn't exist we could have used mutationPlan(cur) + var i = mutationPlan(cur) + // @DarkDimius You commented on the previous version + // + // var i = mutationPlan(0) // if TreeTransform.transform() method didn't exist we could have used mutationPlan(cur) + // + // But we need to use `cur` or otherwise we call prepare actions preceding the + // phase that issued a transformFollowing. This can lead to "denotation not defined + // here" errors. Note that tests still pass with the current modified code. val l = result.length var allDone = i < l while (i < l) { |