diff options
Diffstat (limited to 'tests/disabled/scalac-dependent/structural.scala')
-rw-r--r-- | tests/disabled/scalac-dependent/structural.scala | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/disabled/scalac-dependent/structural.scala b/tests/disabled/scalac-dependent/structural.scala new file mode 100644 index 000000000..0f18f4579 --- /dev/null +++ b/tests/disabled/scalac-dependent/structural.scala @@ -0,0 +1,25 @@ +case class Record(elems: (String, Any)*) extends Selectable { + def selectDynamic(name: String): Any = elems.find(_._1 == name).get._2 +} + +object Test { + import scala.reflect.Selectable.reflectiveSelectable + + def f(closeable: { def close(): Unit }) = + closeable.close() + + type RN = Record { val name: String; val age: Int } + + def g(r: RN) = r.name + + val rr: RN = Record("name" -> "Bob", "age" -> 42).asInstanceOf[RN] + + def main(args: Array[String]): Unit = { + f(new java.io.PrintStream("foo")) + assert(g(rr) == "Bob") + + val s: { def concat(s: String): String } = "abc" + assert(s.concat("def") == "abcdef") + } +} + |