File tree Expand file tree Collapse file tree 2 files changed +12
-9
lines changed
compiler/src/dotty/tools/dotc/core Expand file tree Collapse file tree 2 files changed +12
-9
lines changed Original file line number Diff line number Diff line change @@ -292,16 +292,16 @@ trait TypeOps { this: Context => // TODO: Make standalone object.
292292 if (! sym.exists || (sym eq defn.LanguageModuleClass )) " "
293293 else toPrefix(sym.owner) + sym.name + " ."
294294 def featureName = toPrefix(owner) + feature
295- def hasImport (implicit ctx : Context ): Boolean = {
296- if (ctx.importInfo == null || (ctx.importInfo.site.widen.typeSymbol ne owner)) false
297- else if (ctx.importInfo.excluded.contains(feature)) false
298- else if (ctx.importInfo.originals.contains(feature)) true
299- else {
300- var c = ctx.outer
301- while (c.importInfo eq ctx.importInfo) c = c.outer
302- hasImport(c)
295+ def hasImport (implicit ctx : Context ): Boolean =
296+ ctx.importInfo != null && {
297+ ctx.importInfo.site.widen.typeSymbol == owner &&
298+ ! ctx.importInfo.excluded.contains(feature) &&
299+ ctx.importInfo.originals.contains(feature) || {
300+ var c = ctx.outer
301+ while (c.importInfo eq ctx.importInfo) c = c.outer
302+ hasImport(c)
303+ }
303304 }
304- }
305305 def hasOption = ctx.base.settings.language.value exists (s => s == featureName || s == " _" )
306306 hasImport(ctx.withPhase(ctx.typerPhase)) || hasOption
307307 }
Original file line number Diff line number Diff line change 1+ import scala .language .dynamics
2+ import scala .Nil
3+ class Foo () extends Dynamic
You can’t perform that action at this time.
0 commit comments