aboutsummaryrefslogtreecommitdiff
path: root/tests/run/no-useless-forwarders.scala
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2016-02-18 13:03:05 +0100
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2016-03-15 14:43:40 +0100
commit28a2c76952c753ea2c3efacfad93c87a63227259 (patch)
treeecf5920c39cdbeca8c371a191a1cdc3ed2ecf837 /tests/run/no-useless-forwarders.scala
parentc103926177e1c5b34fc36036af8d686725490180 (diff)
downloaddotty-28a2c76952c753ea2c3efacfad93c87a63227259.tar.gz
dotty-28a2c76952c753ea2c3efacfad93c87a63227259.tar.bz2
dotty-28a2c76952c753ea2c3efacfad93c87a63227259.zip
Add a test that checks that no useless forwarders are being created.
Diffstat (limited to 'tests/run/no-useless-forwarders.scala')
-rw-r--r--tests/run/no-useless-forwarders.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/run/no-useless-forwarders.scala b/tests/run/no-useless-forwarders.scala
new file mode 100644
index 000000000..699295027
--- /dev/null
+++ b/tests/run/no-useless-forwarders.scala
@@ -0,0 +1,17 @@
+trait A {
+ def foo(a: Int): Int = a
+ def bar(a: Int): Int
+}
+
+trait B {
+ def bar(a: Int): Int = a
+}
+
+object Test extends A with B{
+ def main(args: Array[String]) = {
+ assert(!this.getClass.getDeclaredMethods.exists{x: java.lang.reflect.Method => x.getName == "foo"},
+ "no forwarder is needed here")
+ assert(!this.getClass.getDeclaredMethods.exists{x: java.lang.reflect.Method => x.getName == "bar"},
+ "no forwarder is needed here")
+ }
+}