diff options
author | Paul Phillips <paulp@improving.org> | 2012-01-21 05:18:54 -0800 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-01-21 05:18:54 -0800 |
commit | e94035c6a6305b4a8c07c690a316008787aca7b1 (patch) | |
tree | 2418dc6c905a8072661b57d80d9813a39d2723c9 /test | |
parent | 5a711d7a41c6fe68c5b145b0df7c1a589ba6ea73 (diff) | |
parent | 2e092d4822d044312317c502badd8ad5c2674b58 (diff) | |
download | scala-e94035c6a6305b4a8c07c690a316008787aca7b1.tar.gz scala-e94035c6a6305b4a8c07c690a316008787aca7b1.tar.bz2 scala-e94035c6a6305b4a8c07c690a316008787aca7b1.zip |
Merge remote-tracking branches 'retronym/ticket/5072' and 'odersky/topic/t5120' into develop
Diffstat (limited to 'test')
-rw-r--r-- | test/files/pos/t5120.scala | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/files/pos/t5120.scala b/test/files/pos/t5120.scala new file mode 100644 index 0000000000..2c193d129d --- /dev/null +++ b/test/files/pos/t5120.scala @@ -0,0 +1,26 @@ +// An example extracted from SBT by Iulian +// that showed that the previous fix to t5120 +// was too strict. +class Test { + class ScopedKey[T] + class Value[T] + + class Compiled[T](val settings: Seq[Pair[T]]) + + case class Pair[T](k: ScopedKey[T], v: ScopedKey[T]) + + def transform[T](x: T) = x + + def test(compiledSettings: Seq[Compiled[_]]) = { + compiledSettings flatMap { cs => // cd: Compiled[_] in both versions + (cs.settings map { s => // cs.settings: Seq[Compiled[$1]] in trunk, Seq[Compiled[$1]] forSome $1 in 2.9.1 + // s: Pair[$1] in trunk, Pair[$1] in 2.9.1 + val t = transform(s.v) // t: ScopedKey[_] in trunk, ScopedKey[$1] in 2.9.1 + foo(s.k, t) + t + }) : Seq[ScopedKey[_]] + } + } + + def foo[T](x: ScopedKey[T], v: ScopedKey[T]) {} +} |