diff options
-rwxr-xr-x | test/files/pos/t1459/AbstractBase.java | 5 | ||||
-rwxr-xr-x | test/files/pos/t1459/App.scala | 18 | ||||
-rwxr-xr-x | test/files/pos/t1459/Caller.java | 7 |
3 files changed, 30 insertions, 0 deletions
diff --git a/test/files/pos/t1459/AbstractBase.java b/test/files/pos/t1459/AbstractBase.java new file mode 100755 index 0000000000..492419416c --- /dev/null +++ b/test/files/pos/t1459/AbstractBase.java @@ -0,0 +1,5 @@ +package base; + +public abstract class AbstractBase { + public abstract void doStuff(String... params); // !!! was Object.. +}
\ No newline at end of file diff --git a/test/files/pos/t1459/App.scala b/test/files/pos/t1459/App.scala new file mode 100755 index 0000000000..651b285b17 --- /dev/null +++ b/test/files/pos/t1459/App.scala @@ -0,0 +1,18 @@ +package foo +import base._ + +object App extends Application { + class Concrete extends AbstractBase { + override def doStuff(params:java.lang.String*): Unit = println("doStuff invoked") + } + + val impl = new Concrete + + //succeeds + impl.doStuff(null) + + val caller = new Caller + + // fails with AbstractMethodError + caller.callDoStuff(impl) +} diff --git a/test/files/pos/t1459/Caller.java b/test/files/pos/t1459/Caller.java new file mode 100755 index 0000000000..4ae51d8c57 --- /dev/null +++ b/test/files/pos/t1459/Caller.java @@ -0,0 +1,7 @@ +package base; + +public class Caller { + public void callDoStuff(AbstractBase impl) { + impl.doStuff("abc"); // was new Object()); + } +}
\ No newline at end of file |