diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-11-21 16:58:39 +0100 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-11-21 16:58:39 +0100 |
commit | 997796b4ee96c1cbaca7200521c971667d7da7b6 (patch) | |
tree | 59cc550b9f140f709588c438070f6d1e71df73e5 | |
parent | 3f08b0967fb1d68466aed2182c7451dee7715be3 (diff) | |
parent | f75dbdb251763f1d579f4528b2ec152cfc35e3f6 (diff) | |
download | scala-997796b4ee96c1cbaca7200521c971667d7da7b6.tar.gz scala-997796b4ee96c1cbaca7200521c971667d7da7b6.tar.bz2 scala-997796b4ee96c1cbaca7200521c971667d7da7b6.zip |
Merge pull request #4121 from retronym/ticket/5938
SI-5938 Test for a FSC bug with mixin, duplicate static forwarders
-rw-r--r-- | test/files/run/t5938.scala | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/files/run/t5938.scala b/test/files/run/t5938.scala new file mode 100644 index 0000000000..59a95ac37f --- /dev/null +++ b/test/files/run/t5938.scala @@ -0,0 +1,35 @@ +import scala.tools.partest.DirectTest + +object Test extends DirectTest { + + override def extraSettings: String = + s"-usejavacp -d ${testOutput.path}" + + override def code = """ +object O extends C { + def main(args: Array[String]): Unit = { + } + // Static forwarder for foo and setter_foo_= added more once in a multi-run compile. +} + """.trim + + override def show(): Unit = { + val global = newCompiler() + Console.withErr(System.out) { + compileString(global)(code) + compileString(global)(code) + loadClass // was "duplicate name and signature in class X" + } + } + + def loadClass: Class[_] = { + val cl = new java.net.URLClassLoader(Array(testOutput.toFile.toURL)); + cl.loadClass("O") + } +} + +trait T { + val foo: String = "" +} +class C extends T + |