diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2015-03-17 15:46:07 -0700 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2015-03-17 15:46:07 -0700 |
commit | 2dc3b19fb3fe18dada28c3506a14dd9602065e06 (patch) | |
tree | 5e36d534f7bda9a40337a5f79ae73693019f83e1 /src | |
parent | fa33395a25c87115c910e8d4a4124aee6134062b (diff) | |
download | scala-2dc3b19fb3fe18dada28c3506a14dd9602065e06.tar.gz scala-2dc3b19fb3fe18dada28c3506a14dd9602065e06.tar.bz2 scala-2dc3b19fb3fe18dada28c3506a14dd9602065e06.zip |
SI-9231 Don't attempt implicit search for erroneous parameter
If the instantiated type of an implicit parameter is erroneous,
we should not attempt the implicit search. This avoids the following
useless error message in the enclosed test:
error: ambiguous implicit values: ... match expected type M[<error>]
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Typers.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala index 3a85d16f55..377404b564 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala @@ -151,7 +151,7 @@ trait Typers extends Adaptations with Tags with TypersTracking with PatternTyper for(ar <- argResultsBuff) paramTp = paramTp.subst(ar.subst.from, ar.subst.to) - val res = if (paramFailed || (paramTp.isError && {paramFailed = true; true})) SearchFailure else inferImplicit(fun, paramTp, context.reportErrors, isView = false, context) + val res = if (paramFailed || (paramTp.isErroneous && {paramFailed = true; true})) SearchFailure else inferImplicit(fun, paramTp, context.reportErrors, isView = false, context) argResultsBuff += res if (res.isSuccess) { |