diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2012-11-22 14:20:18 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2012-11-26 21:46:40 +0100 |
commit | 9aa6ded8e01179e7d55144de273b39f3a0b2d3ec (patch) | |
tree | 4746ee626e95c54b4a1e7e0339afae68c60dc0ff /test/files/neg/t6667b.scala | |
parent | 3719f790f301852b85dcd95b401c921e286d4e1e (diff) | |
download | scala-9aa6ded8e01179e7d55144de273b39f3a0b2d3ec.tar.gz scala-9aa6ded8e01179e7d55144de273b39f3a0b2d3ec.tar.bz2 scala-9aa6ded8e01179e7d55144de273b39f3a0b2d3ec.zip |
SI-6667 Abort after any ambiguous in-scope implicit
Rather than continuing on to a search of implicits
of the expected type.
Previously, the companion implicits were searched if the
the caller was running the implicit search in silent
mode, for example if searching for an implicit parameter
in an application which has an expected type.
After this commit, the behaviour is consistent, regardless
on silent/non-silent typing.
Diffstat (limited to 'test/files/neg/t6667b.scala')
-rw-r--r-- | test/files/neg/t6667b.scala | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/files/neg/t6667b.scala b/test/files/neg/t6667b.scala new file mode 100644 index 0000000000..4e64e1af17 --- /dev/null +++ b/test/files/neg/t6667b.scala @@ -0,0 +1,25 @@ +object Test { + abstract class Box { + val value: Int + } + + implicit val a: Box = new Box { + val value= 1 + } + + def main(args: Array[String]) { + implicit val b: Box= new Box { + val value= 2 + } + + new Object { + new Test() + } + // compare with: + new Test() + } +} + +class Test()(implicit x: Test.Box) { + println(x.value) +} |