а там разве erase не делает итератор висячим?
а к примеру заворачивание в unique_ptr не поможет?
и таймера внутри loop не щелкают?
сборка дебажная?