summaryrefslogtreecommitdiff
path: root/test/pending/pos/t2071.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2009-10-02 17:57:16 +0000
committerMartin Odersky <odersky@gmail.com>2009-10-02 17:57:16 +0000
commit83b67aa805fd1329d6bcc54b1c1fa16416437b6f (patch)
tree3fcc59ba0523f644bceef4676f7a6689f9949417 /test/pending/pos/t2071.scala
parent84146e2f53fb1f5e8abbc521121078e932cf82e7 (diff)
downloadscala-83b67aa805fd1329d6bcc54b1c1fa16416437b6f.tar.gz
scala-83b67aa805fd1329d6bcc54b1c1fa16416437b6f.tar.bz2
scala-83b67aa805fd1329d6bcc54b1c1fa16416437b6f.zip
Sequence->Seq
Diffstat (limited to 'test/pending/pos/t2071.scala')
-rw-r--r--test/pending/pos/t2071.scala14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/pending/pos/t2071.scala b/test/pending/pos/t2071.scala
new file mode 100644
index 0000000000..a96edb4cfb
--- /dev/null
+++ b/test/pending/pos/t2071.scala
@@ -0,0 +1,14 @@
+trait Iterable[+S]
+trait Box[U]
+
+trait A {
+ type T <: Iterable[S] forSome { type S <: Box[U]; type U }
+}
+
+trait B extends A {
+ type T <: Iterable[S] forSome { type S <: Box[U]; type U }
+}
+But according to SLS, 3.5.1 Type Equivalence: Two existential types (ยง3.2.10) are equivalent if they have the same number of quantifiers, and, after renaming one list of type quantifiers by another, the quantified types as well as lower and upper bounds of corresponding quantifiers are equivalent.
+
+So, every existential type must be equivalent to (and conform to) itself.
+Attachments