diff options
author | michelou <michelou@epfl.ch> | 2005-11-28 11:58:36 +0000 |
---|---|---|
committer | michelou <michelou@epfl.ch> | 2005-11-28 11:58:36 +0000 |
commit | 653d8ffab28acee731fa8fd26152f35fa7f4874a (patch) | |
tree | 3236043ff73a3e2582f121a13b29429a3faa3838 /test-nsc | |
parent | 959a8f05207410211655cbc47b8f01282e7dc4a1 (diff) | |
download | scala-653d8ffab28acee731fa8fd26152f35fa7f4874a.tar.gz scala-653d8ffab28acee731fa8fd26152f35fa7f4874a.tar.bz2 scala-653d8ffab28acee731fa8fd26152f35fa7f4874a.zip |
*** empty log message ***
Diffstat (limited to 'test-nsc')
-rw-r--r-- | test-nsc/files/neg/variances.check | 4 | ||||
-rw-r--r-- | test-nsc/files/neg/variances.scala | 4 | ||||
-rw-r--r-- | test-nsc/files/pos/variances.scala | 8 |
3 files changed, 16 insertions, 0 deletions
diff --git a/test-nsc/files/neg/variances.check b/test-nsc/files/neg/variances.check new file mode 100644 index 0000000000..6f161c18c6 --- /dev/null +++ b/test-nsc/files/neg/variances.check @@ -0,0 +1,4 @@ +variances.scala:2 error: covariant type a occurs in contravariant position in type Vector[a] of value x + def append(x: Vector[a]): Vector[a] + ^ +one error found diff --git a/test-nsc/files/neg/variances.scala b/test-nsc/files/neg/variances.scala new file mode 100644 index 0000000000..ebcba21611 --- /dev/null +++ b/test-nsc/files/neg/variances.scala @@ -0,0 +1,4 @@ +trait Vector[+a] { + def append(x: Vector[a]): Vector[a] +} + diff --git a/test-nsc/files/pos/variances.scala b/test-nsc/files/pos/variances.scala new file mode 100644 index 0000000000..7dc56b0225 --- /dev/null +++ b/test-nsc/files/pos/variances.scala @@ -0,0 +1,8 @@ +abstract class P[+a, +b] { // SLS, Example 4.4.2 + def fst: a; + def snd: b +} + +trait Vector[+a] { // SLS, Example 4.4.3 b) + def append[b >: a](x: Vector[b]): Vector[b] +} |