@@ -3,7 +3,7 @@ package dotc
33package config
44
55import core ._
6- import Contexts ._ , Symbols ._ , Names ._
6+ import Contexts ._ , Symbols ._ , Names ._ , NameOps . _
77import StdNames .nme
88import Decorators .{given _ }
99import util .SourcePosition
@@ -22,7 +22,7 @@ object Feature:
2222 def enabledBySetting (feature : TermName , owner : Symbol = NoSymbol )(using Context ): Boolean =
2323 def toPrefix (sym : Symbol ): String =
2424 if ! sym.exists || sym == defn.LanguageModule .moduleClass then " "
25- else toPrefix(sym.owner) + sym.name + " ."
25+ else toPrefix(sym.owner) + sym.name.stripModuleClassSuffix + " ."
2626 val prefix = if owner.exists then toPrefix(owner) else " "
2727 ctx.base.settings.language.value.contains(prefix + feature)
2828
@@ -38,7 +38,7 @@ object Feature:
3838 def enabledByImport (feature : TermName , owner : Symbol = NoSymbol )(using Context ): Boolean =
3939 ctx.atPhase(ctx.typerPhase) {
4040 ctx.importInfo != null
41- && ctx.importInfo.featureImported(feature.toTermName ,
41+ && ctx.importInfo.featureImported(feature,
4242 if owner.exists then owner else defn.LanguageModule .moduleClass)
4343 }
4444
@@ -57,6 +57,9 @@ object Feature:
5757 def dynamicsEnabled (using Context ): Boolean =
5858 enabled(nme.dynamics)
5959
60+ def dependentEnabled (using Context ) =
61+ enabled(nme.dependent, defn.LanguageExperimentalModule .moduleClass)
62+
6063 def sourceVersionSetting (using Context ): SourceVersion =
6164 SourceVersion .valueOf(ctx.settings.source.value)
6265
0 commit comments