You can loop out of range. If iter1==iter2, but iter3!=iter4, the following code would push_back(*iter1), although iter1 is already l.end().
while (iter1 != iter2 || iter3 !=iter4)
{
interleavedList.push_back(*iter1);
interleavedList.push_back(*iter3);