diff options
author | Martin Odersky <odersky@gmail.com> | 2006-08-18 17:09:14 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2006-08-18 17:09:14 +0000 |
commit | d283455a24148f43d33f69f4be1b627705d35ab6 (patch) | |
tree | 91d5b9c6025077a542c0e3517a00927d86c241bb /test | |
parent | d5aee9e7a1dde5fd3215f8ee6c8a811745535a16 (diff) | |
download | scala-d283455a24148f43d33f69f4be1b627705d35ab6.tar.gz scala-d283455a24148f43d33f69f4be1b627705d35ab6.tar.bz2 scala-d283455a24148f43d33f69f4be1b627705d35ab6.zip |
fixed bug 704
Diffstat (limited to 'test')
-rw-r--r-- | test/files/neg/bug708.check | 5 | ||||
-rw-r--r-- | test/files/neg/bug708.scala | 12 | ||||
-rw-r--r-- | test/files/pos/bug704.scala | 14 |
3 files changed, 31 insertions, 0 deletions
diff --git a/test/files/neg/bug708.check b/test/files/neg/bug708.check new file mode 100644 index 0000000000..30b31b662a --- /dev/null +++ b/test/files/neg/bug708.check @@ -0,0 +1,5 @@ +bug708.scala:8 error: error overriding type A$$S in trait X with bounds >: scala.All <: A.this.T; + type A$$S has incompatible type scala.Any + override private[A] type S = Any; + ^ +one error found diff --git a/test/files/neg/bug708.scala b/test/files/neg/bug708.scala new file mode 100644 index 0000000000..f86a005811 --- /dev/null +++ b/test/files/neg/bug708.scala @@ -0,0 +1,12 @@ +trait A { + type T; + trait X { + private[A] type S <: T; + /*private[A]*/ def foo : S; + } + trait Y extends X { + override private[A] type S = Any; + override /*private[A]*/ def foo = null; + } +} + diff --git a/test/files/pos/bug704.scala b/test/files/pos/bug704.scala new file mode 100644 index 0000000000..aea8292f2d --- /dev/null +++ b/test/files/pos/bug704.scala @@ -0,0 +1,14 @@ +trait D { + private val x = 1 + private object xxxx { Console.println(x) } +} +object Go extends D { + def main(args : Array[String]) : Unit = {}; +} +trait D2 { + val x = 1 + object yyyy { Console.println(x) } +} +object Go2 extends D2 { + def main(args : Array[String]) : Unit = {}; +} |