summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-07-12 15:36:28 +0200
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-07-14 12:09:30 +0200
commit41f4497cc57f5e010df10a9f5a98c9815c1c36fd (patch)
treeea478ad1bc9a17693ff0d09b67657b17c0588b41 /src
parent1a73aa087e9ccd7584d91c653a8b61905da7c904 (diff)
downloadscala-41f4497cc57f5e010df10a9f5a98c9815c1c36fd.tar.gz
scala-41f4497cc57f5e010df10a9f5a98c9815c1c36fd.tar.bz2
scala-41f4497cc57f5e010df10a9f5a98c9815c1c36fd.zip
Attempt #2 to optimize findMember
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/Driver.scala4
-rw-r--r--src/compiler/scala/tools/nsc/Main.scala6
-rw-r--r--src/reflect/scala/reflect/internal/Types.scala14
3 files changed, 12 insertions, 12 deletions
diff --git a/src/compiler/scala/tools/nsc/Driver.scala b/src/compiler/scala/tools/nsc/Driver.scala
index 0051c3bdec..15e2929ff1 100644
--- a/src/compiler/scala/tools/nsc/Driver.scala
+++ b/src/compiler/scala/tools/nsc/Driver.scala
@@ -1,10 +1,12 @@
package scala.tools.nsc
import scala.tools.nsc.reporters.{Reporter, ConsoleReporter}
-import Properties.{ versionString, copyrightString }
+import Properties.{ versionString, copyrightString, residentPromptString }
import scala.reflect.internal.util.{ BatchSourceFile, FakePos }
abstract class Driver {
+
+ val prompt = residentPromptString
val versionMsg = "Scala compiler " +
versionString + " -- " +
diff --git a/src/compiler/scala/tools/nsc/Main.scala b/src/compiler/scala/tools/nsc/Main.scala
index 19c872b6d3..8b7e76e994 100644
--- a/src/compiler/scala/tools/nsc/Main.scala
+++ b/src/compiler/scala/tools/nsc/Main.scala
@@ -12,15 +12,13 @@ import scala.tools.nsc.interactive.{ RefinedBuildManager, SimpleBuildManager }
import scala.tools.nsc.io.AbstractFile
import scala.tools.nsc.reporters.{Reporter, ConsoleReporter}
import scala.reflect.internal.util.{ BatchSourceFile, FakePos } //{Position}
-import Properties.{ versionString, copyrightString, residentPromptString, msilLibPath }
+import Properties.msilLibPath
/** The main class for NSC, a compiler for the programming
- * language Scala.
+ * language Scala.
*/
object Main extends Driver with EvalLoop {
- val prompt = residentPromptString
-
def resident(compiler: Global) {
loop { line =>
val args = line.split(' ').toList
diff --git a/src/reflect/scala/reflect/internal/Types.scala b/src/reflect/scala/reflect/internal/Types.scala
index 191981efef..8477bdaf01 100644
--- a/src/reflect/scala/reflect/internal/Types.scala
+++ b/src/reflect/scala/reflect/internal/Types.scala
@@ -1053,7 +1053,7 @@ trait Types extends api.Types { self: SymbolTable =>
while (!bcs.isEmpty) {
val decls = bcs.head.info.decls
var entry =
- if (name == nme.ANYNAME) decls.elems
+ if (name eq nme.ANYNAME) decls.elems
else if ((fingerPrint & decls.fingerPrints) == 0) null
else decls.lookupEntry(name)
while (entry ne null) {
@@ -1069,12 +1069,12 @@ trait Types extends api.Types { self: SymbolTable =>
Statistics.popTimer(typeOpsStack, start)
if (suspension ne null) suspension foreach (_.suspended = false)
return sym
- } else if (member == NoSymbol) {
+ } else if (member eq NoSymbol) {
member = sym
} else if (members eq null) {
- if (member.name != sym.name ||
- !(member == sym ||
- member.owner != sym.owner &&
+ if ((member.name ne sym.name) ||
+ !((member eq sym) ||
+ (member.owner ne sym.owner) &&
!sym.isPrivate && {
if (self eq null) self = this.narrow
if (membertpe eq null) membertpe = self.memberType(member)
@@ -1088,8 +1088,8 @@ trait Types extends api.Types { self: SymbolTable =>
var prevEntry = members.lookupEntry(sym.name)
var symtpe: Type = null
while ((prevEntry ne null) &&
- !(prevEntry.sym == sym ||
- prevEntry.sym.owner != sym.owner &&
+ !((prevEntry.sym eq sym) ||
+ (prevEntry.sym.owner ne sym.owner) &&
!sym.hasFlag(PRIVATE) && {
if (self eq null) self = this.narrow
if (symtpe eq null) symtpe = self.memberType(sym)