summaryrefslogtreecommitdiff
path: root/test/pending/neg
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-03-31 10:36:49 +0000
committerMartin Odersky <odersky@gmail.com>2006-03-31 10:36:49 +0000
commit3049afc7ec7ca038dd8d68d26803c0733df01ee1 (patch)
tree0a41f798b75b4aef55ab00e645cc77b6cdb0be69 /test/pending/neg
parent7ff239d7a998fb0ef7443e6c2020b6dcb64dabdd (diff)
downloadscala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.tar.gz
scala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.tar.bz2
scala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.zip
fixed several old bugs
Diffstat (limited to 'test/pending/neg')
-rw-r--r--test/pending/neg/bug412.scala31
-rw-r--r--test/pending/neg/bug432.check4
-rw-r--r--test/pending/neg/bug452.check6
-rw-r--r--test/pending/neg/bug452.scala8
-rw-r--r--test/pending/neg/bug555.check4
-rw-r--r--test/pending/neg/bug556.check4
-rw-r--r--test/pending/neg/bug558.check4
7 files changed, 61 insertions, 0 deletions
diff --git a/test/pending/neg/bug412.scala b/test/pending/neg/bug412.scala
new file mode 100644
index 0000000000..66de4761fb
--- /dev/null
+++ b/test/pending/neg/bug412.scala
@@ -0,0 +1,31 @@
+object Magic {
+
+ abstract class A[T1,T2]() {
+ trait C { type T; }
+ trait C1 extends C { type T = T1; }
+ trait C2 extends C { type T <: T2; }
+
+ type CX;
+ val c: CX with C2 = null;
+
+ def castA(x: c.T): T2 = x;
+ }
+
+ class B[T1,T2] extends A[T1,T2]() {
+ type CX = C1;
+
+ def castB(x: T1): T2 = castA(x);
+ }
+
+ def cast[T1,T2](v: T1): T2 =
+ new B[T1,T2]().castB(v)
+
+}
+
+object Test {
+
+ def main(args: Array[String]): Unit = {
+ Magic.cast[String,Exception]("xyz").printStackTrace();
+ }
+
+}
diff --git a/test/pending/neg/bug432.check b/test/pending/neg/bug432.check
new file mode 100644
index 0000000000..e6fbd29579
--- /dev/null
+++ b/test/pending/neg/bug432.check
@@ -0,0 +1,4 @@
+bug432.scala:2 error: Tata is already defined as case class Tata
+object Tata
+^
+one error found
diff --git a/test/pending/neg/bug452.check b/test/pending/neg/bug452.check
new file mode 100644
index 0000000000..de484ef44b
--- /dev/null
+++ b/test/pending/neg/bug452.check
@@ -0,0 +1,6 @@
+bug452.scala:3 error: type mismatch;
+ found : Test
+ required: Test.this.Foo
+ def this() = this(this);
+ ^
+one error found
diff --git a/test/pending/neg/bug452.scala b/test/pending/neg/bug452.scala
new file mode 100644
index 0000000000..855406d0c4
--- /dev/null
+++ b/test/pending/neg/bug452.scala
@@ -0,0 +1,8 @@
+object Test {
+ class Foo(x: Foo) {
+ def this() = this(this);
+ }
+ def main(args: Array[String]): Unit = {
+ new Foo();
+ }
+}
diff --git a/test/pending/neg/bug555.check b/test/pending/neg/bug555.check
new file mode 100644
index 0000000000..5bd0833217
--- /dev/null
+++ b/test/pending/neg/bug555.check
@@ -0,0 +1,4 @@
+bug555.scala:4 error: block must end in result expression, not in definition
+ }
+ ^
+one error found
diff --git a/test/pending/neg/bug556.check b/test/pending/neg/bug556.check
new file mode 100644
index 0000000000..39d9f50f85
--- /dev/null
+++ b/test/pending/neg/bug556.check
@@ -0,0 +1,4 @@
+bug556.scala:3 error: wrong number of parameters; expected = 1
+ def g:Int = f((x,y)=>x)
+ ^
+one error found
diff --git a/test/pending/neg/bug558.check b/test/pending/neg/bug558.check
new file mode 100644
index 0000000000..6587939731
--- /dev/null
+++ b/test/pending/neg/bug558.check
@@ -0,0 +1,4 @@
+bug558.scala:13 error: value file is not a member of NewModel.this.RootURL
+ final val source = top.file;
+ ^
+one error found