From 116f2b129e5a15b392cadb54f04ec5e6861ea1fc Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 26 Oct 2015 13:23:21 +0100 Subject: [PATCH] ensure that fresh variables are not registered infinitely (IDEA-146740) --- .../impl/source/resolve/graphInference/InferenceSession.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/InferenceSession.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/InferenceSession.java index 734f5fdd2538..fe9e2309bf28 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/InferenceSession.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/graphInference/InferenceSession.java @@ -899,7 +899,9 @@ public class InferenceSession { } parameter.putUserData(LOWER_BOUND, lub); } - var.addBound(elementFactory.createType(parameter), InferenceBound.EQ); + if (!var.addBound(elementFactory.createType(parameter), InferenceBound.EQ)) { + return null; + } } myIncorporationPhase.forgetCaptures(vars); if (!repeatInferencePhases(true)) {