summaryrefslogtreecommitdiff
path: root/test/files/pos/t5020.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-01-06 21:23:56 -0800
committerPaul Phillips <paulp@improving.org>2012-01-06 21:51:08 -0800
commita6ebd0f3ee2610ce1f5c3b2aee269ea8b2cfd6df (patch)
treee72e0e2d9b5611fe8892fb2dbcfb4f8312569cd9 /test/files/pos/t5020.scala
parent6a37ada63977e5016204ffa3f325c233d0e342c0 (diff)
downloadscala-a6ebd0f3ee2610ce1f5c3b2aee269ea8b2cfd6df.tar.gz
scala-a6ebd0f3ee2610ce1f5c3b2aee269ea8b2cfd6df.tar.bz2
scala-a6ebd0f3ee2610ce1f5c3b2aee269ea8b2cfd6df.zip
Remedy spurious bounds conformance failure.
Misters hkarg and hkparam have to work harder to see things from the same perspective, so they don't end up in a huff over bounds which were the same all along. Closes SI-5020, review by @moors.
Diffstat (limited to 'test/files/pos/t5020.scala')
-rw-r--r--test/files/pos/t5020.scala19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/files/pos/t5020.scala b/test/files/pos/t5020.scala
new file mode 100644
index 0000000000..06f7723f9f
--- /dev/null
+++ b/test/files/pos/t5020.scala
@@ -0,0 +1,19 @@
+package a {
+ sealed trait GenericList[U, M[_ <: U]] {
+ type Transformed[N[MMA <: U]] <: GenericList[U, N]
+ }
+
+ trait GenericCons[U, M[_ <: U], T <: GenericList[U, M]] extends GenericList[U, M] {
+ type Transformed[N[MMB <: U]] = GenericCons[U, N, GenericList[U, M]#Transformed[N]]
+ }
+}
+
+package b {
+ sealed trait GenericList[L, M[_ >: L]] {
+ type Transformed[N[MMA >: L]] <: GenericList[L, N]
+ }
+
+ trait GenericCons[L, M[_ >: L], T <: GenericList[L, M]] extends GenericList[L, M] {
+ type Transformed[N[MMB >: L]] = GenericCons[L, N, T#Transformed[N]]
+ }
+} \ No newline at end of file