We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent b86af07 commit deac689Copy full SHA for deac689
compiler/src/dotty/tools/dotc/transform/PureStats.scala
@@ -21,12 +21,12 @@ class PureStats extends MiniPhase {
21
override def runsAfter: Set[String] = Set(Erasure.name)
22
23
override def transformBlock(tree: Block)(implicit ctx: Context): Tree =
24
- val stats = Trees.flatten(
25
- tree.stats.mapConserve {
+ val stats = tree.stats.mapConserve {
26
case Typed(Block(stats, expr), _) if isPureExpr(expr) => Thicket(stats)
27
case stat if !stat.symbol.isConstructor && isPureExpr(stat) => EmptyTree
28
case stat => stat
29
- })
30
- cpy.Block(tree)(stats, tree.expr)
+ }
+ if stats eq tree.stats then tree
+ else cpy.Block(tree)(Trees.flatten(stats), tree.expr)
31
32
}
0 commit comments