http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60959
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Sreenath U S from comment #2) > "sets the badbit on the stream which causes nothing to be printed after > that."; So this is a defined behavior or it varies on compiler to compiler? I think it is undefined behavior, GCC decides to play it safe.