OK. I was wrong. The looping part is a known issue. The setting of failbit for operator>> is not. See: 91. Description of operator>> and getline() for string<> might cause endless loop Sorry if I confused you with my tirade about istream::sentry and failbit. I really really really wish the standard was consistent WRT failbit. -Benjamin