diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Typers.scala | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala index 0b8d119289..0f038cbf22 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala @@ -3513,10 +3513,6 @@ trait Typers { self: Analyzer => if (qual1 ne qual) return typed(treeCopy.Select(tree, qual1, name), mode, pt) } - if (!reallyExists(sym) && currentRun.compileSourceFor(qual, name)) { - return typedSelect(qual, name) - } - if (!reallyExists(sym)) { if (settings.debug.value) Console.err.println("qual = "+qual+":"+qual.tpe+"\nSymbol="+qual.tpe.termSymbol+"\nsymbol-info = "+qual.tpe.termSymbol.info+"\nscope-id = "+qual.tpe.termSymbol.info.decls.hashCode()+"\nmembers = "+qual.tpe.members+"\nname = "+name+"\nfound = "+sym+"\nowner = "+context.enclClass.owner) @@ -3603,6 +3599,8 @@ trait Typers { self: Analyzer => } while (defSym == NoSymbol && cx != NoContext) { + if (currentRun.compileSourceFor(context.asInstanceOf[analyzer.Context], name)) + assert(true) pre = cx.enclClass.prefix defEntry = cx.scope.lookupEntry(name) if ((defEntry ne null) && qualifies(defEntry.sym)) { @@ -3678,9 +3676,7 @@ trait Typers { self: Analyzer => if (!(shortenImports && qual0.symbol.isPackage)) // optimization: don't write out package prefixes qual = atPos(tree.pos.focusStart)(resetPos(qual0.duplicate)) pre = qual.tpe - } else if (currentRun.compileSourceFor(context.asInstanceOf[analyzer.Context], name)) - return typedIdent(name) - else { + } else { if (settings.debug.value) { log(context.imports)//debug } |