type assignment: types do not agree when raw substitutor is used with raw type (IDEA-67627)

This commit is contained in:
anna
2011-06-08 17:36:55 +04:00
parent 3354dfff66
commit 37f2eda4b2
@@ -822,6 +822,7 @@ public class TypeConversionUtil {
PsiSubstitutor leftSubstitutor = leftResult.getSubstitutor();
if (!leftClass.getManager().areElementsEquivalent(leftClass, rightClass)) {
if (!allowUncheckedConversion && PsiUtil.isRawSubstitutor(leftClass, leftSubstitutor) && !rightClass.hasTypeParameters()) return false;
rightSubstitutor = getSuperClassSubstitutor(leftClass, rightClass, rightSubstitutor);
rightClass = leftClass;
}