summaryrefslogtreecommitdiff
path: root/test/files/pos/simplelists.scala
diff options
context:
space:
mode:
authorGilles Dubochet <gilles.dubochet@epfl.ch>2005-12-16 18:29:42 +0000
committerGilles Dubochet <gilles.dubochet@epfl.ch>2005-12-16 18:29:42 +0000
commitdf50e05006b43b007c2587549030d24b5c154398 (patch)
tree9edfb1fb5b8c04350a00c163cfcdb1fccd79e3aa /test/files/pos/simplelists.scala
parent17e2b1c2a6f69ba74e79c30d1e44195fe732e3e3 (diff)
downloadscala-df50e05006b43b007c2587549030d24b5c154398.tar.gz
scala-df50e05006b43b007c2587549030d24b5c154398.tar.bz2
scala-df50e05006b43b007c2587549030d24b5c154398.zip
'test-nsc' has been moved to 'test'.
Diffstat (limited to 'test/files/pos/simplelists.scala')
-rw-r--r--test/files/pos/simplelists.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/files/pos/simplelists.scala b/test/files/pos/simplelists.scala
new file mode 100644
index 0000000000..73b04a8762
--- /dev/null
+++ b/test/files/pos/simplelists.scala
@@ -0,0 +1,17 @@
+ abstract class List[+a] {
+ def head: a;
+ def tail: List[a];
+ def cons[b >: a](x: b): List[b] = new Cons[b, a](x, this);
+ }
+
+ object Nil extends List[All] {
+ def error(msg: String): All = throw new java.lang.Error(msg);
+ def head: All = error("Nil.head");
+ def tail: List[All] = error("Nil.tail");
+ }
+
+ class Cons[c, d <: c](x: c, xs: List[d]) extends List[c] {
+ def head: c = x;
+ def tail: List[c] = xs;
+ }
+