This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: Testsuite problem
- From: Benjamin Kosnik <bkoz at redhat dot com>
- To: Pétur Runólfsson <peturr02 at ru dot is>
- Cc: libstdc++ at gcc dot gnu dot org
- Date: Fri, 16 Apr 2004 13:42:02 -0500
- Subject: Re: Testsuite problem
- Organization: Red Hat / Chicago
- References: <07D05A69A3D0C14FAEA60C3ACE8E5564028F562F@mail.ru.is>
Hey Pétur.
>testsuite/27_io/basic_filebuf/close/char/9964.cc was supposed to check
>how basic_filebuf::close() behaves when a low level write fails, but
>with this change, the write is no longer failing:
>
> filebuf fb;
> sleep(1);
>- filebuf* ret = fb.open(name, ios_base::out | ios_base::trunc);
>+ filebuf* ret = fb.open(name, ios_base::in | ios_base::out);
> VERIFY( ret != NULL );
> VERIFY( fb.is_open() );
>
>@@ -67,7 +67,7 @@
> fb.sputc('a');
>
> ret = fb.close();
>- VERIFY( ret == NULL );
>+ VERIFY( ret != NULL );
> VERIFY( !fb.is_open() );
> }
Ouch. I didn't see this part of the patch when it went in.
>The solution is probably to just use ios_base::out, and XFAIL on those
>targets where that doesn't work.
Yep. If you prepare a patch, and post it, it'll be easier to track this
issue. We can sort this out after the release.
>There is no problem with the rest of the changes, in those tests the
>pipes are being used to make seek fail.
True. However, there are problems with some of the testsuite idioms
involving files. Zack commented on at the time, but nobody had/has time
to fix it at the moment.
Hopefully we'll be able to focus on this after 3.4.0.
best,
benjamin