diff --git a/compiler/src/dotty/tools/dotc/transform/CheckUnused.scala b/compiler/src/dotty/tools/dotc/transform/CheckUnused.scala index 7cff6fa5f1f0..f475ee7b8925 100644 --- a/compiler/src/dotty/tools/dotc/transform/CheckUnused.scala +++ b/compiler/src/dotty/tools/dotc/transform/CheckUnused.scala @@ -102,6 +102,7 @@ class CheckUnused private (phaseMode: CheckUnused.PhaseMode, suffix: String, _ke pushInBlockTemplatePackageDef(tree) override def prepareForTemplate(tree: tpd.Template)(using Context): Context = + traverser.traverse(tree.constr) pushInBlockTemplatePackageDef(tree) override def prepareForPackageDef(tree: tpd.PackageDef)(using Context): Context = diff --git a/tests/pos/i19252.scala b/tests/pos/i19252.scala new file mode 100644 index 000000000000..afa8763ddda7 --- /dev/null +++ b/tests/pos/i19252.scala @@ -0,0 +1,10 @@ +//> using options -Werror -Wunused:imports +package foo { + trait D1 +} + +object Bug: + import foo.D1 + class Cl(d1: D1): + import foo.D1 +end Bug