diff options
Diffstat (limited to 'test/files/run')
-rw-r--r-- | test/files/run/bug428.check | 8 | ||||
-rw-r--r-- | test/files/run/bug428.scala | 37 |
2 files changed, 45 insertions, 0 deletions
diff --git a/test/files/run/bug428.check b/test/files/run/bug428.check new file mode 100644 index 0000000000..21bef2f8d3 --- /dev/null +++ b/test/files/run/bug428.check @@ -0,0 +1,8 @@ +Foo 1: a = 0, b = 0, x = 0, y = 0 +Foo 2: a = 2, b = 0, x = 0, y = 0 +Foo 3: a = 2, b = 3, x = 0, y = 0 +Foo 4: a = 2, b = 3, x = 0, y = 0 +Foo 5: a = 2, b = 3, x = 0, y = 0 +Bar 1: a = 2, b = 3, x = 0, y = 0 +Bar 2: a = 2, b = 3, x = 5, y = 0 +Bar 3: a = 2, b = 3, x = 5, y = 7 diff --git a/test/files/run/bug428.scala b/test/files/run/bug428.scala new file mode 100644 index 0000000000..34d99efd1f --- /dev/null +++ b/test/files/run/bug428.scala @@ -0,0 +1,37 @@ +object Test { + + abstract class Foo(_a: Int, _b: Int) { + + Console.println("Foo 1: " + this); + val a: Int = _a; + Console.println("Foo 2: " + this); + val b: Int = { fun(); _b } + Console.println("Foo 3: " + this); + val x: Int; + Console.println("Foo 4: " + this); + val y: Int; + Console.println("Foo 5: " + this); + + + def fun(): Unit = (); + + override def toString(): String = + "a = " + a + ", b = " + b + ", x = " + x + ", y = " + y; + + } + + class Bar(_a: Int, _b: Int, _x: Int, _y: Int) extends Foo(_a, _b) { + + Console.println("Bar 1: " + this); + val x: Int = _x; + Console.println("Bar 2: " + this); + val y: Int = { fun(); _y } + Console.println("Bar 3: " + this); + + } + + def main (args: Array[String]): Unit = { + new Bar(2,3,5,7); + } + +} |