From 646aea3a20fdf980b57dd6f45a372cce0b0671dc Mon Sep 17 00:00:00 2001 From: anna Date: Wed, 6 Nov 2013 14:19:13 +0100 Subject: [PATCH] new inference: avoid self bounds when possible --- .../constraints/ExpressionCompatibilityConstraint.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/constraints/ExpressionCompatibilityConstraint.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/constraints/ExpressionCompatibilityConstraint.java index 7ef2a7250030..8fe69b24c06d 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/constraints/ExpressionCompatibilityConstraint.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/constraints/ExpressionCompatibilityConstraint.java @@ -118,7 +118,9 @@ public class ExpressionCompatibilityConstraint extends InputOutputConstraintForm else { returnType = callSubstitutor.substitute(returnType); } - constraints.add(new TypeCompatibilityConstraint(GenericsUtil.eliminateWildcards(myT, false), returnType)); + if (!TypeConversionUtil.isAssignable(myT, returnType)) { + constraints.add(new TypeCompatibilityConstraint(GenericsUtil.eliminateWildcards(myT, false), returnType)); + } } } return true;