diff options
author | Roland <rk@rkuhn.info> | 2012-09-12 14:28:39 +0200 |
---|---|---|
committer | Roland <rk@rkuhn.info> | 2012-09-12 14:28:39 +0200 |
commit | 13ff968b9d273e03bfa226ca1ec52949391a6b68 (patch) | |
tree | 51e64bff6fb38fa212b7e187ee4f0a02be1e3e23 /test/files/run/t6327.scala | |
parent | 300803606ebca352955e945cf468a0c2bfc83b9c (diff) | |
parent | d9a4e94f8716b810e8122c6494b1718410238668 (diff) | |
download | scala-13ff968b9d273e03bfa226ca1ec52949391a6b68.tar.gz scala-13ff968b9d273e03bfa226ca1ec52949391a6b68.tar.bz2 scala-13ff968b9d273e03bfa226ca1ec52949391a6b68.zip |
Merge remote-tracking branch 'origin/2.10.x' into fix-duration-issues-RK
Diffstat (limited to 'test/files/run/t6327.scala')
-rw-r--r-- | test/files/run/t6327.scala | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/files/run/t6327.scala b/test/files/run/t6327.scala new file mode 100644 index 0000000000..7683101f14 --- /dev/null +++ b/test/files/run/t6327.scala @@ -0,0 +1,22 @@ +import language._ + +object Test extends App { + + case class R[+T](s: String) { def x() = println(s) } + + // Implicits in contention; StringR is nested to avoid ambiguity + object R { implicit val StringR = R[String]("A") } + implicit val Default = R[Any]("B") + + class B() extends Dynamic { + def selectDynamic[T](f: String)(implicit r: R[T]): Unit = r.x() + } + + val b = new B() + + // These should all produce the same output, but they don't + b.selectDynamic[String]("baz") + b.baz[String] + val c = b.selectDynamic[String]("baz") + val d = b.baz[String] +} |