This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: std::cin, std::cerr, std::clog behaviour
- From: Nathan Myers <ncm-nospam at cantrip dot org>
- To: libstdc++ at gcc dot gnu dot org
- Date: Thu, 23 Oct 2003 22:03:48 -0700
- Subject: Re: std::cin, std::cerr, std::clog behaviour
- References: <011d01c399c3$76cf85d0$0602840a@itga.com.au>
On Fri, Oct 24, 2003 at 10:12:08AM +1000, Gary Hughes wrote:
> I have recently upgraded from gcc 2.9.3 to gcc 3.3 and have noticed a
> difference in the behaviour of these streams I was not expecting.
>
> Under 2.95.3 writing a string such as "blah blah" to any of these streams
> would result in a single call to write(). Under 3.3 this behaviour is the
> same for std::cout, but std::cerr and std::clog call write() for each
> character in the string.
Does your program call std::ios::sync_with_stdio(false) before
performing any I/O?
In any case, most of the effort that has gone into optimizing I/O in
libstdc++ will bear fruit in the gcc-3.4 release. Earlier 3.x releases
have had (decreasingly) embarassing performance.
Nathan Myers
ncm@cantrip.org