void (@NotNull DfaVariableValue var, boolean markFlushed) { DfType typeBefore = getDfType(var); removeEquivalence(var); myVariableTypes.remove(var); if (markFlushed) { DfType inherentType = var.getInherentType(); DfType correctedType = inherentType.correctTypeOnFlush(typeBefore); if (!inherentType.equals(correctedType)) { recordVariableType(var, correctedType); } } myCachedHash = null; }