summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2007-06-05 15:57:59 +0000
committerMartin Odersky <odersky@gmail.com>2007-06-05 15:57:59 +0000
commite51207992f525ed9e32a7a9a39512b4d7e503c03 (patch)
treeb9440d03aed294fde3f8aaa293f60ed98b5de0c1 /src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala
parente060c61b6127ceb2de0e4ce5d3f3d685bc542804 (diff)
downloadscala-e51207992f525ed9e32a7a9a39512b4d7e503c03.tar.gz
scala-e51207992f525ed9e32a7a9a39512b4d7e503c03.tar.bz2
scala-e51207992f525ed9e32a7a9a39512b4d7e503c03.zip
deprecated &f, .f, requires.
Added existential types.
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala b/src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala
index dd60378bcd..cdc1023f88 100644
--- a/src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala
+++ b/src/compiler/scala/tools/nsc/backend/icode/Linearizers.scala
@@ -10,7 +10,7 @@ package scala.tools.nsc.backend.icode;
import scala.tools.nsc.ast._;
import scala.collection.mutable.{Stack, HashSet};
-trait Linearizers requires ICodes {
+trait Linearizers { self: ICodes =>
import opcodes._;
abstract class Linearizer {
@@ -38,7 +38,7 @@ trait Linearizers requires ICodes {
blocks = Nil;
run {
- worklist ++= (m.exh map (.startBlock));
+ worklist ++= (m.exh map (_.startBlock));
worklist.push(b);
}
@@ -62,8 +62,8 @@ trait Linearizers requires ICodes {
if (b.size > 0) {
add(b);
b.lastInstruction match {
- case JUMP(where) =>
- add(where);
+ case JUMP(whereto) =>
+ add(whereto);
case CJUMP(success, failure, _, _) =>
add(success);
add(failure);
@@ -154,7 +154,7 @@ trait Linearizers requires ICodes {
if (m.code.startBlock.predecessors eq Nil)
blocks
else
- m.code.startBlock :: (blocks.remove(.==(m.code.startBlock)))
+ m.code.startBlock :: (blocks.remove(_ == m.code.startBlock))
}
def linearizeAt(m: IMethod, start: BasicBlock): List[BasicBlock] = {