   std::list erase()
  What happens if you have an std::list and you call the erase(std::list<type>::iterator) function and the iterator points to some place in memory that isn't part of the list?   
  Bad things (it's not allowed).It's up to you to ensure that your iterators are valid. e.g.std::list<asdf>::iterator i = myList.find(42);if( i != myList.end() )//check i is valid  myList.erase( i );Things like getting an iterator from list A and then passing it to list B's erase function, are bad and wrong.   ;  Damn I was hoping good things would happen.   