diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/PsiImplUtil.java b/java/java-psi-impl/src/com/intellij/psi/impl/PsiImplUtil.java index 2b1b117b7553..7fb45493a58f 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/PsiImplUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/PsiImplUtil.java @@ -327,6 +327,9 @@ public class PsiImplUtil { } public static PsiType normalizeWildcardTypeByPosition(@NotNull PsiType type, @NotNull PsiExpression expression) { + LOG.assertTrue(expression.isValid()); + LOG.assertTrue(type.isValid()); + PsiExpression toplevel = expression; while (toplevel.getParent() instanceof PsiArrayAccessExpression && ((PsiArrayAccessExpression)toplevel.getParent()).getArrayExpression() == toplevel) { @@ -334,6 +337,7 @@ public class PsiImplUtil { } final PsiType normalized = doNormalizeWildcardByPosition(type, expression, toplevel); + LOG.assertTrue(normalized.isValid(), type); if (normalized instanceof PsiClassType && !PsiUtil.isAccessedForWriting(toplevel)) { return PsiUtil.captureToplevelWildcards(normalized, expression); }