aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/typer/Typer.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2014-01-04 23:14:18 +0100
committerMartin Odersky <odersky@gmail.com>2014-01-04 23:14:18 +0100
commit7c5d1b7e19596d5190115e3f5d62966ec8541509 (patch)
treec99f5b56023460c3c256a7b4a0e24511de4f8415 /src/dotty/tools/dotc/typer/Typer.scala
parent35eeb8e8f17735bee5722954338836b10cfbb1e8 (diff)
downloaddotty-7c5d1b7e19596d5190115e3f5d62966ec8541509.tar.gz
dotty-7c5d1b7e19596d5190115e3f5d62966ec8541509.tar.bz2
dotty-7c5d1b7e19596d5190115e3f5d62966ec8541509.zip
Propagate constraints on result type eagerly into implicit search.
Thus constraining the search space.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Typer.scala')
-rw-r--r--src/dotty/tools/dotc/typer/Typer.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/typer/Typer.scala b/src/dotty/tools/dotc/typer/Typer.scala
index 2aae8e2e0..ee3c97af3 100644
--- a/src/dotty/tools/dotc/typer/Typer.scala
+++ b/src/dotty/tools/dotc/typer/Typer.scala
@@ -1137,7 +1137,7 @@ class Typer extends Namer with Applications with Implicits {
def adaptNoArgs(wtp: Type): Tree = wtp match {
case wtp: ExprType =>
adaptInterpolated(tree.withType(wtp.resultType), pt)
- case wtp: ImplicitMethodType =>
+ case wtp: ImplicitMethodType if constrainResult(wtp, pt) =>
def implicitArgError(msg: => String): Tree = {
ctx.error(msg, tree.pos.endPos)
EmptyTree