volatile field's nullity shouldn't be used for dfa (IDEA-64696)

This commit is contained in:
peter
2011-01-27 19:36:59 +01:00
parent f9ae15b894
commit 6c8b65e4cd
4 changed files with 55 additions and 1 deletions
@@ -92,7 +92,9 @@ public class StandardInstructionVisitor extends InstructionVisitor {
onAssigningToNotNullableVariable(instruction, runner);
}
}
memState.setVarValue(var, dfaSource);
if (!(psiVariable instanceof PsiField) || !psiVariable.hasModifierProperty(PsiModifier.VOLATILE)) {
memState.setVarValue(var, dfaSource);
}
}
memState.push(dfaDest);