summaryrefslogtreecommitdiff
path: root/test/files/neg/bug4877.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-08-06 21:53:17 +0000
committerPaul Phillips <paulp@improving.org>2011-08-06 21:53:17 +0000
commit05382e2351e1ec6ebfbb50c4df12a2b1410a0b80 (patch)
tree4112795a3f5fa89fa47408a20526b88d57599c34 /test/files/neg/bug4877.scala
parent990fa046e6bbe95d5def208b38fead77d2437f9f (diff)
downloadscala-05382e2351e1ec6ebfbb50c4df12a2b1410a0b80.tar.gz
scala-05382e2351e1ec6ebfbb50c4df12a2b1410a0b80.tar.bz2
scala-05382e2351e1ec6ebfbb50c4df12a2b1410a0b80.zip
Improved structural type error messages, and ot...
Improved structural type error messages, and other error message related boosts. Closes SI-4877, review by odersky.
Diffstat (limited to 'test/files/neg/bug4877.scala')
-rw-r--r--test/files/neg/bug4877.scala22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/files/neg/bug4877.scala b/test/files/neg/bug4877.scala
new file mode 100644
index 0000000000..5d97877518
--- /dev/null
+++ b/test/files/neg/bug4877.scala
@@ -0,0 +1,22 @@
+trait C { }
+
+class A {
+ def foo: AnyRef { def bar: String } = new AnyRef { def bar = 42 }
+ def foo2: AnyRef { def bar: String } = new AnyRef { def bar = "abc" }
+ def foo3: AnyRef { def bar(x: Int): Int } = new AnyRef { def bar(x: Int) = "abc" }
+ def foo4: C { def bar(x: Int): Int ; def quux(x: Int): Int } = new C { def bar(x: Int) = 5 }
+}
+
+class B {
+ type Bippy = {
+ type Mom
+ def bar(x: Int): Mom
+ def bippy(): List[Mom]
+ }
+
+ val x: Bippy = new AnyRef {
+ type Mom = String
+ def bar(x: Int) = 55
+ def bippy() = List(bar(55))
+ }
+} \ No newline at end of file