From 77b11fd35b2def646d1e9715601574f1288e6d19 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Fri, 5 Jun 2015 09:51:59 +0200 Subject: [PATCH] captured wildcard: if one of captures contains super wildcard, existential types must be the same (symmetry) --- .../src/com/intellij/psi/PsiCapturedWildcardType.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/java-psi-api/src/com/intellij/psi/PsiCapturedWildcardType.java b/java/java-psi-api/src/com/intellij/psi/PsiCapturedWildcardType.java index 5e04d021ccb2..5ab4cf678da7 100644 --- a/java/java-psi-api/src/com/intellij/psi/PsiCapturedWildcardType.java +++ b/java/java-psi-api/src/com/intellij/psi/PsiCapturedWildcardType.java @@ -64,7 +64,11 @@ public class PsiCapturedWildcardType extends PsiType.Stub { } final PsiCapturedWildcardType captured = (PsiCapturedWildcardType)o; - if (!myContext.equals(captured.myContext) || myExistential.isSuper() && !myExistential.equals(captured.myExistential)) { + if (!myContext.equals(captured.myContext)) { + return false; + } + + if ((myExistential.isSuper() || captured.myExistential.isSuper()) && !myExistential.equals(captured.myExistential)) { return false; }