diff --git a/lib/checkother.cpp b/lib/checkother.cpp index 688bc77a0..490c08997 100644 --- a/lib/checkother.cpp +++ b/lib/checkother.cpp @@ -705,12 +705,12 @@ void CheckOther::checkRedundantAssignment() for (std::map::iterator i = varAssignments.begin(); i != varAssignments.end(); ++i) { const Variable* var = symbolDatabase->getVariableFromVarId(i->first); if (!var || (!var->isLocal() && !var->isArgument())) - i = varAssignments.erase(i); + varAssignments.erase(i++); } for (std::map::iterator i = memAssignments.begin(); i != memAssignments.end(); ++i) { const Variable* var = symbolDatabase->getVariableFromVarId(i->first); if (!var || (!var->isLocal() && !var->isArgument())) - i = memAssignments.erase(i); + memAssignments.erase(i++); } } else { varAssignments.clear();