summaryrefslogtreecommitdiff
path: root/test/pending/neg/bug963.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-10-03 03:19:21 +0000
committerPaul Phillips <paulp@improving.org>2010-10-03 03:19:21 +0000
commit2fefb37220f82300e2aa44442f1a42261d65e359 (patch)
tree24267661fa20065cf33c70d9860774b145673565 /test/pending/neg/bug963.scala
parent943fbb1363345fdaca55e5df95059e8ce8c1344b (diff)
downloadscala-2fefb37220f82300e2aa44442f1a42261d65e359.tar.gz
scala-2fefb37220f82300e2aa44442f1a42261d65e359.tar.bz2
scala-2fefb37220f82300e2aa44442f1a42261d65e359.zip
One last batch of test cleanups and I think I'l...
One last batch of test cleanups and I think I'll call it a day. If you're worried I didn't leave any for anyone else, let me put your fears to rest. PLENTY left to sift through. No review.
Diffstat (limited to 'test/pending/neg/bug963.scala')
-rw-r--r--test/pending/neg/bug963.scala26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/pending/neg/bug963.scala b/test/pending/neg/bug963.scala
new file mode 100644
index 0000000000..430ef090e4
--- /dev/null
+++ b/test/pending/neg/bug963.scala
@@ -0,0 +1,26 @@
+// Soundness bug, at #963 and dup at #2079.
+trait A {
+ type T
+ var v : T
+}
+
+object B {
+ def f(x : { val y : A }) { x.y.v = x.y.v }
+
+ var a : A = _
+ var b : Boolean = false
+ def y : A = {
+ if(b) {
+ a = new A { type T = Int; var v = 1 }
+ a
+ } else {
+ a = new A { type T = String; var v = "" }
+ b = true
+ a
+ }
+ }
+}
+
+object Test extends Application {
+ B.f(B)
+}