From a7e99b8b11e2a6847a178bc7765382d7f59f522e Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Fri, 9 Dec 2011 14:45:34 +0400 Subject: [PATCH] Better logging + arguemnts resolve on inference failure --- .../src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java | 2 +- .../jet/lang/resolve/calls/inference/ConstraintSystemImpl.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java index de1fb006eca..e611247ebe7 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java @@ -505,7 +505,7 @@ public class CallResolver { } else { tracing.typeInferenceFailed(temporaryTrace, solution.getStatus()); - candidateCall.setStatus(OTHER_ERROR); + candidateCall.setStatus(checkAllValueArguments(scope, tracing, task, candidateCall)); } } else { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java index e6f8263432f..8ea8f233b0c 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java @@ -409,6 +409,7 @@ public class ConstraintSystemImpl implements ConstraintSystem { KnownType knownBoundType = (KnownType) upperBound; boolean ok = constraintExpander.isSubtypeOf(jetType, knownBoundType.getType()); if (!ok) { + listener.error("Error while expanding '" + jetType + " :< " + knownBoundType.getType() + "'"); return new Solution().registerError("Mismatch while expanding constraints"); } }