summaryrefslogtreecommitdiff
path: root/test/files/neg
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-07-25 10:48:39 +0000
committerMartin Odersky <odersky@gmail.com>2006-07-25 10:48:39 +0000
commit982fab6e30a29c98e88ff7b817dc0959a136ebb3 (patch)
treeaef1912f39a66692d8a75795da7e711f47cd2fdc /test/files/neg
parente44c3c3606f4be84451f95d2009a1628b4250ea0 (diff)
downloadscala-982fab6e30a29c98e88ff7b817dc0959a136ebb3.tar.gz
scala-982fab6e30a29c98e88ff7b817dc0959a136ebb3.tar.bz2
scala-982fab6e30a29c98e88ff7b817dc0959a136ebb3.zip
added tests for bugs 663, 667
Diffstat (limited to 'test/files/neg')
-rw-r--r--test/files/neg/bug663.check7
-rwxr-xr-xtest/files/neg/bug663.scala18
-rw-r--r--test/files/neg/bug667.check4
-rw-r--r--test/files/neg/bug667.scala10
-rw-r--r--test/files/neg/bug668.scala1
5 files changed, 40 insertions, 0 deletions
diff --git a/test/files/neg/bug663.check b/test/files/neg/bug663.check
new file mode 100644
index 0000000000..b974b1f4c0
--- /dev/null
+++ b/test/files/neg/bug663.check
@@ -0,0 +1,7 @@
+bug663.scala:11 error: name clash between defined and inherited member:
+method asMatch:(Test.this.Node)scala.Any and
+method asMatch:(Test.this.Matchable)scala.Any in trait MatchableImpl
+have same type after erasure: (test.Test#NodeImpl)java.lang.Object
+ def asMatch(m : Node) : Any = {
+ ^
+one error found
diff --git a/test/files/neg/bug663.scala b/test/files/neg/bug663.scala
new file mode 100755
index 0000000000..797c4a300d
--- /dev/null
+++ b/test/files/neg/bug663.scala
@@ -0,0 +1,18 @@
+package test;
+trait Test {
+ type Matchable <: Node with MatchableImpl;
+ trait MatchableImpl extends NodeImpl {
+ def asMatch(node : Matchable) : Any;
+ }
+ type Node <: NodeImpl;
+ trait NodeImpl;
+ trait CoreIfImpl extends MatchableImpl {
+ // NO_CRASH: def asMatch(m : Matchable) = {
+ def asMatch(m : Node) : Any = {
+ if (m.isInstanceOf[MatchableImpl]) {
+ null;
+ } else null;
+ // NO_CRASH: null;
+ }
+ }
+}
diff --git a/test/files/neg/bug667.check b/test/files/neg/bug667.check
new file mode 100644
index 0000000000..11daa182ef
--- /dev/null
+++ b/test/files/neg/bug667.check
@@ -0,0 +1,4 @@
+bug667.scala:8 error: class Ni inherits itself
+ class Ni extends super.Ni with Ni;
+ ^
+one error found
diff --git a/test/files/neg/bug667.scala b/test/files/neg/bug667.scala
new file mode 100644
index 0000000000..a79bc272e4
--- /dev/null
+++ b/test/files/neg/bug667.scala
@@ -0,0 +1,10 @@
+package test;
+
+object test {
+ trait A {
+ trait Ni;
+ }
+ class B extends A {
+ class Ni extends super.Ni with Ni;
+ }
+}
diff --git a/test/files/neg/bug668.scala b/test/files/neg/bug668.scala
new file mode 100644
index 0000000000..3256037b1e
--- /dev/null
+++ b/test/files/neg/bug668.scala
@@ -0,0 +1 @@
+class Test extends Iterable