STINNER Victor added the comment: >> It looks to be a feature of the standard C library, at least the GNU libc. > Yes, it's guaranteed by POSIX/ANSI (see man exit).
Hum, POSIX (2004) is not so strict: "Whether open streams are flushed or closed, or temporary files are removed is implementation-defined." http://pubs.opengroup.org/onlinepubs/009695399/functions/exit.html 2013/4/29 Charles-François Natali <rep...@bugs.python.org>: > > Charles-François Natali added the comment: > >> "When you say Python 2, I assume you mean CPython 2, right? >> Because - AFAICT - files got flushed only by accident, not by design." >> >> It looks to be a feature of the standard C library, at least the GNU libc. >> Its libio library installs an exit handler flushing all open files. You can >> see it if you set a breaking on write() using gdb: > > Yes, it's guaranteed by POSIX/ANSI (see man exit). > I was refering to the fact that the automatic flushing of files upon > exit is a mere side effect of the implementation based atop stdio > stream in cpython 2. It's no guaranteed by any Python spec (and I > can't really think of any platform other than C that makes such > guarantee). > > ---------- > > _______________________________________ > Python tracker <rep...@bugs.python.org> > <http://bugs.python.org/issue17852> > _______________________________________ ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17852> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com