diff options
Diffstat (limited to 'tests/untried/neg/t3692-new.scala')
-rw-r--r-- | tests/untried/neg/t3692-new.scala | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/untried/neg/t3692-new.scala b/tests/untried/neg/t3692-new.scala new file mode 100644 index 000000000..6ecf4acb8 --- /dev/null +++ b/tests/untried/neg/t3692-new.scala @@ -0,0 +1,20 @@ +import scala.reflect.{ClassTag, classTag} +import java.lang.Integer + +object Tester { + def main(args: Array[String]) = { + val map = Map("John" -> 1, "Josh" -> 2) + new Tester().toJavaMap(map) + } +} + +class Tester { + private final def toJavaMap[T, V](map: Map[T, V])(implicit m1: ClassTag[T], m2: ClassTag[V]): java.util.Map[_, _] = { + map match { + case m0: Map[Int, Int] => new java.util.HashMap[Integer, Integer] + case m1: Map[Int, V] => new java.util.HashMap[Integer, V] + case m2: Map[T, Int] => new java.util.HashMap[T, Integer] + case _ => new java.util.HashMap[T, V] + } + } +} |