EA-44725 - assert: PsiDiamondTypeImpl.resolveInferredTypesNoCheck

(cherry picked from commit 9ad4847e6febec4239f129fdb8e56110c66d4b6d)
This commit is contained in:
anna
2013-03-11 16:33:00 +01:00
parent 794c975ea7
commit bc5c90ccc8

View File

@@ -129,7 +129,7 @@ public class PsiDiamondTypeImpl extends PsiDiamondType {
final PsiExpressionList argumentList = newExpression.getArgumentList();
if (argumentList == null) return DiamondInferenceResult.NULL_RESULT;
final Ref<PsiMethod> staticFactoryRef = new Ref<PsiMethod>();
final PsiSubstitutor inferredSubstitutor = ourDiamondGuard.doPreventingRecursion(newExpression, true, new Computable<PsiSubstitutor>() {
final PsiSubstitutor inferredSubstitutor = ourDiamondGuard.doPreventingRecursion(newExpression, false, new Computable<PsiSubstitutor>() {
@Override
public PsiSubstitutor compute() {
final PsiMethod constructor = findConstructor(psiClass, newExpression);
@@ -149,7 +149,7 @@ public class PsiDiamondTypeImpl extends PsiDiamondType {
}
final PsiMethod staticFactory = staticFactoryRef.get();
if (staticFactory == null) {
LOG.assertTrue(false);
LOG.error(inferredSubstitutor);
return DiamondInferenceResult.NULL_RESULT;
}
final PsiTypeParameter[] parameters = staticFactory.getTypeParameters();