Skip to content

Commit 7e1b2ea

Browse files
committed
Drop java-defined trees in FirstTransform
1 parent b9ac3f3 commit 7e1b2ea

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/dotty/tools/dotc/transform/FirstTransform.scala

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import DenotTransformers._
1919
import typer.Checking
2020
import Names.Name
2121
import NameOps._
22+
import Flags
2223

2324

2425
/** The first tree transform
@@ -28,6 +29,7 @@ import NameOps._
2829
* - inserts `.package` for selections of package object members
2930
* - checks the bounds of AppliedTypeTrees
3031
* - stubs out native methods
32+
* - removes java-defined ASTs
3133
*/
3234
class FirstTransform extends MiniPhaseTransform with IdentityDenotTransformer with AnnotationTransformer { thisTransformer =>
3335
import ast.tpd._
@@ -84,7 +86,10 @@ class FirstTransform extends MiniPhaseTransform with IdentityDenotTransformer wi
8486
Thicket(stat :: newCompanion(stat.name.toTermName).trees)
8587
case stat => stat
8688
}
87-
addMissingCompanions(reorder(stats))
89+
90+
def skipJava(stats: List[Tree]): List[Tree] = stats.filter(t => !(t.symbol is Flags.JavaDefined))
91+
92+
addMissingCompanions(reorder(skipJava(stats)))
8893
}
8994

9095
override def transformDefDef(ddef: DefDef)(implicit ctx: Context, info: TransformerInfo) = {

0 commit comments

Comments
 (0)