summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-10-02 23:19:16 +0000
committerPaul Phillips <paulp@improving.org>2010-10-02 23:19:16 +0000
commit943fbb1363345fdaca55e5df95059e8ce8c1344b (patch)
treeb12582afc26fe0e3d0dc4a502eef5e6a2d41bfb3
parent06aa1c9eff49d5190e82a72a876d7b3bd706d6d4 (diff)
downloadscala-943fbb1363345fdaca55e5df95059e8ce8c1344b.tar.gz
scala-943fbb1363345fdaca55e5df95059e8ce8c1344b.tar.bz2
scala-943fbb1363345fdaca55e5df95059e8ce8c1344b.zip
The next batch of tests put up a little more st...
The next batch of tests put up a little more struggle, but only a little. See test/pending/pos/unappgadteval.scala (the changes for which were in the previous commit) for an example of a test which might be on to something. Any idea what it would take to get it working? // the key lines case i @ Suc() => { (y: Int) => y + 1 } // a = Int => Int case f @ Lam[b,c](x, e) => { (y: b) => eval(e, env.extend(x, y)) } // a = b=>c No review.
-rw-r--r--test/files/neg/scopes.check (renamed from test/pending/neg/scopes.check)29
-rw-r--r--test/files/neg/scopes.scala (renamed from test/pending/neg/scopes.scala)0
-rw-r--r--test/files/run/bug874.check2
-rw-r--r--test/files/run/bug874.scala (renamed from test/pending/run/bug874.scala)0
-rw-r--r--test/files/run/records.scala (renamed from test/pending/run/records.scala)6
-rw-r--r--test/pending/neg/bug112506A.scala19
-rw-r--r--test/pending/pos/bug112606B.scala11
-rw-r--r--test/pending/res/bug1092.res1
-rw-r--r--test/pending/res/bug1092/A.scala4
-rw-r--r--test/pending/res/bug1092/B.scala4
-rw-r--r--test/pending/res/bug1092/C.scala6
-rw-r--r--test/pending/res/bug830/Bad.scala11
-rw-r--r--test/pending/res/bug830/Good.scala11
-rw-r--r--test/pending/res/bug830A.res13
-rw-r--r--test/pending/res/bug830B.res13
-rw-r--r--test/pending/res/bug837.res3
-rw-r--r--test/pending/res/bug837/DataFlowAnalysis.scala17
-rw-r--r--test/pending/res/bug837/DeadCode.scala6
-rw-r--r--test/pending/run/collections.check36
-rw-r--r--test/pending/run/collections.scala102
-rw-r--r--test/pending/run/deprecated.scala35
21 files changed, 23 insertions, 306 deletions
diff --git a/test/pending/neg/scopes.check b/test/files/neg/scopes.check
index bb8e15058b..54c5d5b5e1 100644
--- a/test/pending/neg/scopes.check
+++ b/test/files/neg/scopes.check
@@ -1,30 +1,35 @@
scopes.scala:1: error: x is already defined as value x
-case class test0(x: int, x: float)
+case class test0(x: Int, x: Float)
^
+scopes.scala:1: error: type mismatch;
+ found : Float
+ required: Int
+case class test0(x: Int, x: Float)
+ ^
scopes.scala:5: error: t is already defined as type t
- type t = float
+ type t = Float
^
scopes.scala:7: error: x is already defined as value x
- val x: float = .0f;
+ val x: Float = .0f;
^
scopes.scala:10: error: y is already defined as value y
- val y: float = .0f
+ val y: Float = .0f
^
scopes.scala:13: error: x is already defined as value x
- def f1(x: int, x: float) = x
+ def f1(x: Int, x: Float) = x
^
scopes.scala:14: error: y is already defined as value y
- def f2(x: int)(y: int, y: float) = x + y
+ def f2(x: Int)(y: Int, y: Float) = x + y
^
scopes.scala:15: error: x is already defined as value x
- val closure = (x: int, x: float) => x
- ^
+ val closure = (x: Int, x: Float) => x
+ ^
scopes.scala:17: error: x is already defined as value x
case x::x => x
^
scopes.scala:1: error: type mismatch;
- found : float
- required: int
-case class test0(x: int, x: float)
+ found : Float
+ required: Int
+case class test0(x: Int, x: Float)
^
-9 errors found
+10 errors found
diff --git a/test/pending/neg/scopes.scala b/test/files/neg/scopes.scala
index fd31ff5f72..fd31ff5f72 100644
--- a/test/pending/neg/scopes.scala
+++ b/test/files/neg/scopes.scala
diff --git a/test/files/run/bug874.check b/test/files/run/bug874.check
new file mode 100644
index 0000000000..91de7e0a03
--- /dev/null
+++ b/test/files/run/bug874.check
@@ -0,0 +1,2 @@
+U created with xyz and 2
+U created with abc and 1
diff --git a/test/pending/run/bug874.scala b/test/files/run/bug874.scala
index d83014651b..d83014651b 100644
--- a/test/pending/run/bug874.scala
+++ b/test/files/run/bug874.scala
diff --git a/test/pending/run/records.scala b/test/files/run/records.scala
index 0447b6f085..c1dc7b67e8 100644
--- a/test/pending/run/records.scala
+++ b/test/files/run/records.scala
@@ -20,6 +20,8 @@ object Test {
val z: T = y
- Console.println(x.f+z.f+", expected = 3")
- Console.println(x.g+z.g+", expected = hello world")
+ def main(args: Array[String]): Unit = {
+ assert(x.f+z.f == 3)
+ assert(x.g+z.g == "hello world")
+ }
}
diff --git a/test/pending/neg/bug112506A.scala b/test/pending/neg/bug112506A.scala
deleted file mode 100644
index 5dffb5ebe6..0000000000
--- a/test/pending/neg/bug112506A.scala
+++ /dev/null
@@ -1,19 +0,0 @@
-package test;
-import scala.collection.immutable.ListSet
-import scala.collection.mutable._;
-trait TypeManagerXXX {
- trait TypedNode;
- type Node;
-}
-trait ScalaTyperXXX extends TypeManagerXXX {
- private var typed : Node = null;
- private val dependMap = new HashMap[String,ListSet[TypedNode]];
- override def lookupEntry(name: String): String = {
- val set = dependMap.get(name) match {
- case Some(set) => set;
- case None => new ListSet[Node]
- }
- dependMap.update(name, set + typed);
- throw new Error;
- }
-}
diff --git a/test/pending/pos/bug112606B.scala b/test/pending/pos/bug112606B.scala
deleted file mode 100644
index 6dfaf4bf01..0000000000
--- a/test/pending/pos/bug112606B.scala
+++ /dev/null
@@ -1,11 +0,0 @@
-package test;
-trait Test2 {
- case class Token(text : String);
- class KeywordToken(text : String) extends Token(text);
- def decode(tok : KeywordToken) = tok match {
- // constructor cannot be instantiated to expected type;
- // found : Test2.this.Token
- // required: Test2.this.KeywordToken
- case Token("final") => true;
- }
-}
diff --git a/test/pending/res/bug1092.res b/test/pending/res/bug1092.res
deleted file mode 100644
index 6deef8afd0..0000000000
--- a/test/pending/res/bug1092.res
+++ /dev/null
@@ -1 +0,0 @@
-bug1092/A.scala bug1092/B.scala bug1092/C.scala
diff --git a/test/pending/res/bug1092/A.scala b/test/pending/res/bug1092/A.scala
deleted file mode 100644
index 192e7afe11..0000000000
--- a/test/pending/res/bug1092/A.scala
+++ /dev/null
@@ -1,4 +0,0 @@
-object HolderA {
- class A(a: Int)
-}
-
diff --git a/test/pending/res/bug1092/B.scala b/test/pending/res/bug1092/B.scala
deleted file mode 100644
index 5c80e8e84d..0000000000
--- a/test/pending/res/bug1092/B.scala
+++ /dev/null
@@ -1,4 +0,0 @@
-object HolderB {
- import HolderA.A
- trait B extends A
-}
diff --git a/test/pending/res/bug1092/C.scala b/test/pending/res/bug1092/C.scala
deleted file mode 100644
index f961a93b5b..0000000000
--- a/test/pending/res/bug1092/C.scala
+++ /dev/null
@@ -1,6 +0,0 @@
-object C extends Application {
- import HolderA.A
- import HolderB.B
-
- println(new A(4) with B)
-}
diff --git a/test/pending/res/bug830/Bad.scala b/test/pending/res/bug830/Bad.scala
deleted file mode 100644
index 17632290ff..0000000000
--- a/test/pending/res/bug830/Bad.scala
+++ /dev/null
@@ -1,11 +0,0 @@
-package test;
-trait HasNodeXXX {
- type Node <: NodeImpl;
- trait NodeImpl;
-}
-trait ScalaFlowScannerZZZ extends HasNodeXXX {
- type Node <: NodeImpl;
- trait NodeImplA extends super.NodeImpl;
- trait NodeImplB extends NodeImpl;
- trait NodeImpl extends NodeImplA with NodeImplB;
-}
diff --git a/test/pending/res/bug830/Good.scala b/test/pending/res/bug830/Good.scala
deleted file mode 100644
index 84789bfc47..0000000000
--- a/test/pending/res/bug830/Good.scala
+++ /dev/null
@@ -1,11 +0,0 @@
-package test;
-trait HasNodeXXX {
- type Node <: NodeImpl;
- trait NodeImpl;
-}
-trait ScalaFlowScannerZZZ extends HasNodeXXX {
- type Node <: NodeImpl;
- trait NodeImplA extends super.NodeImpl;
- trait NodeImplB extends super.NodeImpl;
- trait NodeImpl extends NodeImplA with NodeImplB;
-}
diff --git a/test/pending/res/bug830A.res b/test/pending/res/bug830A.res
deleted file mode 100644
index 421e1a2fee..0000000000
--- a/test/pending/res/bug830A.res
+++ /dev/null
@@ -1,13 +0,0 @@
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Good.scala
diff --git a/test/pending/res/bug830B.res b/test/pending/res/bug830B.res
deleted file mode 100644
index 54c13801b6..0000000000
--- a/test/pending/res/bug830B.res
+++ /dev/null
@@ -1,13 +0,0 @@
-bug830/Good.scala
-bug830/Good.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Bad.scala
-bug830/Bad.scala
-bug830/Good.scala
-bug830/Good.scala
-bug830/Good.scala
-bug830/Bad.scala
-bug830/Bad.scala
-bug830/Bad.scala
-bug830/Good.scala
diff --git a/test/pending/res/bug837.res b/test/pending/res/bug837.res
deleted file mode 100644
index a0f5100843..0000000000
--- a/test/pending/res/bug837.res
+++ /dev/null
@@ -1,3 +0,0 @@
-DataFlowAnalysis.scala DeadCode.scala
-DeadCode.scala
-
diff --git a/test/pending/res/bug837/DataFlowAnalysis.scala b/test/pending/res/bug837/DataFlowAnalysis.scala
deleted file mode 100644
index 25c2fbc635..0000000000
--- a/test/pending/res/bug837/DataFlowAnalysis.scala
+++ /dev/null
@@ -1,17 +0,0 @@
-package test;
-import scala.collection.mutable._;
-trait CompleteLattice {
- trait Elem;
-}
-trait DataFlowAnalysis[L <: CompleteLattice] {
- type P;
- val lattice : L;
- val out: Map[P, lattice.Elem] = new HashMap;
-}
-abstract class Liveness {
- object livenessLattice extends CompleteLattice;
- final class LivenessAnalysis extends DataFlowAnalysis[livenessLattice.type] {
- type P = String;
- val lattice = livenessLattice;
- }
-}
diff --git a/test/pending/res/bug837/DeadCode.scala b/test/pending/res/bug837/DeadCode.scala
deleted file mode 100644
index 2978e24d42..0000000000
--- a/test/pending/res/bug837/DeadCode.scala
+++ /dev/null
@@ -1,6 +0,0 @@
-package test;
-trait DeadcodeAnalysis {
- object liveness extends Liveness;
- val a = new liveness.LivenessAnalysis();
- var live = a.out("hello");
-}
diff --git a/test/pending/run/collections.check b/test/pending/run/collections.check
deleted file mode 100644
index 33a8551bf3..0000000000
--- a/test/pending/run/collections.check
+++ /dev/null
@@ -1,36 +0,0 @@
-***** immutable.ListSet:
-test1: 14005
-test2: 25005003
-test3: 25005003
-***** immutable.TreeSet:
-test1: 14005
-test2: 25005003
-test3: 25005003
-***** mutable.HashSet:
-test1: 14005
-test2: 25005003
-test3: 25005003
-***** immutable.ListMap:
-test1: 14005
-test2: 1013003
-test3: 1013003
-***** immutable.TreeMap:
-test1: 14005
-test2: 1013003
-test3: 1013003
-***** immutable.UnBalancedTreeMap:
-test1: 14005
-test2: 1013003
-test3: 1013003
-***** immutable.HashTreeSet:
-test1: 14005
-test2: 25005003
-test3: 25005003
-***** immutable.HashTreeMap:
-test1: 14005
-test2: 1013003
-test3: 1013003
-***** mutable.HashMap:
-test1: 14005
-test2: 25005003
-test3: 25005003
diff --git a/test/pending/run/collections.scala b/test/pending/run/collections.scala
deleted file mode 100644
index 16a3ddb370..0000000000
--- a/test/pending/run/collections.scala
+++ /dev/null
@@ -1,102 +0,0 @@
-import collection._
-
-object Test extends Application {
-
- val printTime = false
-
- def sum[A](xs: Iterable[Int]) = (0 /: xs)((x, y) => x + y)
-
- def time(op: => Unit): Unit = {
- val start = System.currentTimeMillis;
- op
- if (printTime) Console.println(" time = "+(System.currentTimeMillis - start)+"ms")
- }
-
- def test(msg: String, s0: collection.immutable.Set[Int]) = {
- Console.println("***** "+msg+":")
- var s = s0
- s = s + 2
- s = s + (3, 4000, 10000)
- Console.println("test1: "+sum(s))
- time {
- s = s ++ (List.range(0, 5000) map (2*))
- Console.println("test2: "+sum(s))
- }
- time {
- var x = 0
- for (val i <- (0 to 10000))
- if (s contains i) x = x + i
- Console.println("test3: "+x)
- }
- }
-
- def test(msg: String, s0: collection.mutable.Set[Int]) = {
- Console.println("***** "+msg+":")
- var s = s0
- s = s + 2
- s = s + (3, 4000, 10000)
- Console.println("test1: "+sum(s))
- time {
- s = s ++ (List.range(0, 5000) map (2*))
- Console.println("test2: "+sum(s))
- }
- time {
- var x = 0
- for (val i <- (0 to 10000))
- if (s contains i) x = x + i
- Console.println("test3: "+x)
- }
- }
-
- def test(msg: String, s0: collection.immutable.Map[Int, Int]) = {
- Console.println("***** "+msg+":")
- var s = s0
- s = s + (2 -> 2)
- s = s + (3 -> 3, 4000 -> 4000, 10000 -> 10000)
- Console.println("test1: "+sum(s map (._2)))
- time {
- s = s ++ (List.range(0, 1000) map (x => x * 2 -> x * 2))
- Console.println("test2: "+sum(s map (._2)))
- }
- time {
- var x = 0
- for (val i <- (0 to 10000))
- s get i match {
- case Some(i) => x = x + i
- case None =>
- }
- Console.println("test3: "+x)
- }
- }
-
- def test(msg: String, s0: collection.mutable.Map[Int, Int]) = {
- Console.println("***** "+msg+":")
- var s = s0
- s = s + (2 -> 2)
- s = s + (3 -> 3, 4000 -> 4000, 10000 -> 10000)
- Console.println("test1: "+sum(s map (._2)))
- time {
- s = s ++ (List.range(0, 5000) map (x => x * 2 -> x * 2))
- Console.println("test2: "+sum(s map (._2)))
- }
- time {
- var x = 0
- for (val i <- (0 to 10000))
- s get i match {
- case Some(i) => x = x + i
- case None =>
- }
- Console.println("test3: "+x)
- }
- }
-
- test("immutable.ListSet", new immutable.ListSet[Int])
- test("immutable.TreeSet", new immutable.TreeSet[Int])
- test("mutable.HashSet", new mutable.HashSet[Int])
- test("immutable.ListMap", new immutable.ListMap[Int, Int])
- test("immutable.TreeMap", new immutable.TreeMap[Int, Int])
- test("immutable.UnBalancedTreeMap", new immutable.UnbalancedTreeMap[Int, Int])
- test("immutable.HashTreeSet", new immutable.HashTreeSet[Int])
- test("immutable.HashTreeMap", new immutable.HashTreeMap[Int, Int])
- test("mutable.HashMap", new mutable.HashMap[Int, Int])
-}
diff --git a/test/pending/run/deprecated.scala b/test/pending/run/deprecated.scala
deleted file mode 100644
index 122e339d2f..0000000000
--- a/test/pending/run/deprecated.scala
+++ /dev/null
@@ -1,35 +0,0 @@
-object Test {
- abstract class AbstractStuff {
- def dostuff: Unit
- }
-
- [postabstract]
- class BlueStuff extends AbstractStuff {
- [deprecated] def dostuff = Console.println("blue")
- def five = "five"
- }
-
- class LightBlueStuff extends BlueStuff {
- [deprecated] override def dostuff = {Console.println("light blue")}
-
- // warning: deprecated method overrides a concrete method
- [deprecated] override def five = "light five"
- }
-
- // warning: not marked as postabstract
- class RedStuff extends AbstractStuff {
- [deprecated] def dostuff = Console.println("red")
- }
-
-
- def main(args: Array[String]) {
- // warning: BlueStuff will be abstract after deprecated methods are removed
- val blue = new BlueStuff
-
- // warning: RedStuff will be abstract after deprecated methods are removed
- val red = new RedStuff
-
- // warning: dostuff is deprecated
- blue.dostuff
- }
-}