From e77cc82afd6fa5ee8afa77181ef845e7d64a797d Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Tue, 3 Jul 2012 13:22:36 +0400 Subject: [PATCH] new constraint system instead of old is used --- .../jet/lang/types/expressions/ExpressionTypingUtils.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java index 519ac39f5d6..921f5efa4fc 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java @@ -232,21 +232,20 @@ public class ExpressionTypingUtils { @NotNull JetType receiverType, @NotNull CallableDescriptor receiverArgument ) { - ConstraintSystem constraintSystem = new ConstraintSystemWithPriorities(ConstraintResolutionListener.DO_NOTHING); + ConstraintSystemImpl constraintSystem = new ConstraintSystemImpl(); for (TypeParameterDescriptor typeParameterDescriptor : receiverArgument.getTypeParameters()) { constraintSystem.registerTypeVariable(typeParameterDescriptor, Variance.INVARIANT); } ReceiverDescriptor receiverParameter = receiverArgument.getReceiverParameter(); if (expectedReceiver.exists() && receiverParameter.exists()) { - constraintSystem.addSubtypingConstraint(ConstraintType.RECEIVER.assertSubtyping(receiverType, receiverParameter.getType())); + constraintSystem.addSubtypingConstraint(receiverType, receiverParameter.getType()); } else if (expectedReceiver.exists() || receiverParameter.exists()) { // Only one of receivers exist return false; } - ConstraintSystemSolution solution = constraintSystem.solve(); - return solution.getStatus().isSuccessful(); + return constraintSystem.isSuccessful() && constraintSystem.upperBoundsAreSatisfied(); } }