diff options
author | Hubert Plociniczak <hubert.plociniczak@epfl.ch> | 2011-01-07 14:42:49 +0000 |
---|---|---|
committer | Hubert Plociniczak <hubert.plociniczak@epfl.ch> | 2011-01-07 14:42:49 +0000 |
commit | 8e9f3c219d05c50cb72446297b236704662879cb (patch) | |
tree | ee5f0377ffd2d391d85b2f672361422c3b27bcb3 /test/files/run | |
parent | 5cefd81ee9f99535e3e2ce8a23016206da65a92d (diff) | |
download | scala-8e9f3c219d05c50cb72446297b236704662879cb.tar.gz scala-8e9f3c219d05c50cb72446297b236704662879cb.tar.bz2 scala-8e9f3c219d05c50cb72446297b236704662879cb.zip |
Closes #4047. Review by odersky
Diffstat (limited to 'test/files/run')
-rw-r--r-- | test/files/run/t4047.check | 5 | ||||
-rw-r--r-- | test/files/run/t4047.scala | 34 |
2 files changed, 39 insertions, 0 deletions
diff --git a/test/files/run/t4047.check b/test/files/run/t4047.check new file mode 100644 index 0000000000..2a942a70e0 --- /dev/null +++ b/test/files/run/t4047.check @@ -0,0 +1,5 @@ +Unit: called A.foo +Unit: called B.foo +Unit: called C.foo +Unit: called D.foo +Unit: called D.foo diff --git a/test/files/run/t4047.scala b/test/files/run/t4047.scala new file mode 100644 index 0000000000..cd42a8b4df --- /dev/null +++ b/test/files/run/t4047.scala @@ -0,0 +1,34 @@ +trait Foo[T] { val foo: T} + +class A extends Foo[Unit]{ + lazy val foo = println("Unit: called A.foo") +} + +class B extends Foo[Unit]{ + val foo = println("Unit: called B.foo") +} + +trait Bar[T] { def foo: T} + +class C extends Bar[Unit]{ + lazy val foo = println("Unit: called C.foo") +} + +class D extends Bar[Unit]{ + def foo = println("Unit: called D.foo") +} + +object Test extends Application { + val a: Foo[Unit] = new A + a.foo + a.foo + val b: Foo[Unit] = new B + b.foo + b.foo + val c: Bar[Unit] = new C + c.foo + c.foo + val d: Bar[Unit] = new D + d.foo + d.foo +} |