diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-03-02 17:58:08 +0100 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-03-09 09:09:42 +0100 |
commit | 0cffdf38d9e2d88e66d8649d317f8815716b2748 (patch) | |
tree | 70f4c85a0aadaeed8d15eeb8d28be1157cd72456 /test | |
parent | b9082321219f78a86e80fcea2a71d96ee4beb397 (diff) | |
download | scala-0cffdf38d9e2d88e66d8649d317f8815716b2748.tar.gz scala-0cffdf38d9e2d88e66d8649d317f8815716b2748.tar.bz2 scala-0cffdf38d9e2d88e66d8649d317f8815716b2748.zip |
SI-5189 1/2: inferConstrInst uses correct variance
fixed concurrent.impl.Promise by making FState invariant
(it would be unsound to make it covariant)
Diffstat (limited to 'test')
-rw-r--r-- | test/files/neg/t5189.check | 6 | ||||
-rw-r--r-- | test/files/neg/t5189.scala | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/test/files/neg/t5189.check b/test/files/neg/t5189.check new file mode 100644 index 0000000000..7762f465dc --- /dev/null +++ b/test/files/neg/t5189.check @@ -0,0 +1,6 @@ +t5189.scala:3: error: type mismatch; + found : Nothing => Any + required: Any => Any + def f(x: Any): Any => Any = x match { case Foo(bar) => bar } + ^ +one error found
\ No newline at end of file diff --git a/test/files/neg/t5189.scala b/test/files/neg/t5189.scala new file mode 100644 index 0000000000..19e8e74667 --- /dev/null +++ b/test/files/neg/t5189.scala @@ -0,0 +1,5 @@ +class TestNeg1 { + case class Foo[T, U](f: T => U) + def f(x: Any): Any => Any = x match { case Foo(bar) => bar } + // uh-oh, Any => Any should be Nothing => Any. +} |