From 7e736ed0a8109f00d721cb1a78152c91ef133b2d Mon Sep 17 00:00:00 2001 From: Iulian Dragos Date: Thu, 6 Nov 2008 17:26:52 +0000 Subject: Fixed optimiser bugs, now all tests pass when u... Fixed optimiser bugs, now all tests pass when using the optimised compiler. --- test/files/run/missingparams.scala | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 test/files/run/missingparams.scala (limited to 'test/files/run/missingparams.scala') diff --git a/test/files/run/missingparams.scala b/test/files/run/missingparams.scala new file mode 100644 index 0000000000..3672fdf76f --- /dev/null +++ b/test/files/run/missingparams.scala @@ -0,0 +1,21 @@ +/** Tests the optimiser. */ + +final class Foo(val x: Int) { + def filter(p: Int => Boolean) = + if (p(x)) Some(x) else None + + // test that the closure elimination is not wrongly replacing + // 'that' by 'this' + def intersect(that: Foo) = + filter { dummy => +// x // dummy + that.x > 0 + } +} + +object Test extends Application { + val foo1 = new Foo(42) + val foo2 = new Foo(-42) + + println(foo1 intersect foo2) +} -- cgit v1.2.3