diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index e207ced7be5..88efbef50fc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,33 @@ +2010-06-26 Paolo Carlini + + * testsuite/util/testsuite_hooks.h: Cast fn to bool. + +2010-06-26 Kees Cook + + * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Verify freopen. + * testsuite/27_io/objects/wchar_t/9520.cc: Likewise. + * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise. + * testsuite/27_io/objects/wchar_t/12048-2.cc: Likewise. + * testsuite/27_io/objects/wchar_t/12048-4.cc: Likewise. + * testsuite/27_io/objects/wchar_t/11.cc: Likewise. + * testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise. + * testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise. + * testsuite/27_io/objects/wchar_t/10.cc: Likewise. + * testsuite/27_io/objects/wchar_t/12048-5.cc: Likewise. + * testsuite/27_io/objects/char/9661-1.cc: Likewise. + * testsuite/27_io/objects/char/12048-2.cc: Likewise. + * testsuite/27_io/objects/char/12048-4.cc: Likewise. + * testsuite/27_io/objects/char/9.cc: Likewise. + * testsuite/27_io/objects/char/12048-1.cc: Likewise. + * testsuite/27_io/objects/char/12048-3.cc: Likewise. + * testsuite/27_io/objects/char/12048-5.cc: Likewise. + * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise. + * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Verify fgets. + * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Verify + fwrite. + * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise. + * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise. + 2010-06-26 Jonathan Wakely * doc/xml/faq.xml: Fix typo. diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc index ff22967600e..b736b146070 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc @@ -44,7 +44,7 @@ void test02() FILE* in = fopen(name, "r"); char str[256]; - fgets(str, 256, in); + VERIFY( fgets(str, 256, in) ); VERIFY( !strcmp(str, "Hello, world") ); fclose(in); } diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc index ff1cc405bd3..f6a2eaca94b 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc @@ -161,7 +161,7 @@ void test02() const char* name = "tmp_11544-2"; FILE* f = fopen(name, "w"); - fwrite("aaaab", 1, 5, f); + VERIFY( fwrite("aaaab", 1, 5, f) == 5 ); fclose(f); wifstream in; diff --git a/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc b/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc index 7ed97c2b81b..29ec9754870 100644 --- a/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc +++ b/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc @@ -41,7 +41,7 @@ void test01() { std::ios_base::sync_with_stdio(); - std::freopen("ios_base_members_static-1.txt", "w", stderr); + VERIFY( std::freopen("ios_base_members_static-1.txt", "w", stderr) ); for (int i = 0; i < 2; i++) { diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc index 2c6bbd60403..e4982c5e768 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc @@ -28,7 +28,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; char c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc index 23ab8eea888..f18e5d393c7 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc @@ -24,7 +24,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; int c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc index 5158003410e..3b83ef176cd 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc @@ -25,7 +25,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char buf[2]; VERIFY( std::cin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc index 02f73b6211c..0f8600dbb40 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc @@ -24,7 +24,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char buf[2]; VERIFY( std::cin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc index 0a0159f82c2..dd544b7370e 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc @@ -33,7 +33,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; int c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/9.cc b/libstdc++-v3/testsuite/27_io/objects/char/9.cc index 1ba5bd12d53..e4905bb46f2 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/9.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/9.cc @@ -34,7 +34,7 @@ void test09() fputs("abc\n", fout); fclose(fout); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); // basic_streambuf::showmanyc returns 0. VERIFY( 0 == std::cin.rdbuf()->in_avail() ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc index 1ad194cd81f..8ca77c76e75 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc @@ -68,7 +68,7 @@ bool test01() exit(0); } - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); s1.wait(); int c1 = fgetc(stdin); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc index 672f0c15439..c5a198a34ee 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc @@ -95,7 +95,7 @@ void test10() VERIFY( n == e_size ); fclose(file); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); wchar_t* wbuf = new wchar_t[i_size + 10]; wcin.read(wbuf, i_size + 10); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc index c9c386f4707..566fdb6be17 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc @@ -90,7 +90,7 @@ void test11() }; size_t i_size = wcslen(i_lit); - freopen(name, "w", stdout); + VERIFY( freopen(name, "w", stdout) ); wcout.write(i_lit, i_size); wcout.flush(); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc index 8489dbb47df..58a40ce91c0 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc @@ -26,7 +26,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; wchar_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc index 82c1ba2b3a3..7eaef212f07 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc @@ -23,7 +23,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; std::wint_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc index 67f3a5b8b5b..8e236ab30cf 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc @@ -27,7 +27,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t buf[2]; VERIFY( std::wcin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc index fc1191f9f2e..3649e7e2259 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc @@ -23,7 +23,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t buf[2]; VERIFY( std::wcin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc index 1672a0ee925..49486e3c450 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc @@ -29,7 +29,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; std::wint_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc index dcaf9bc2540..641d621ded5 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc @@ -38,7 +38,7 @@ void test01() locale loc (locale("de_DE.ISO-8859-15@euro")); locale::global(loc); // Set locale for stdin - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); wcin.imbue(loc); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc index 08d544ef6b3..ca470dac9eb 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc @@ -67,7 +67,7 @@ bool test01() exit(0); } - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); s1.wait(); wint_t c1 = fgetwc(stdin); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc index 7eb4719a7c7..dab6c50b64d 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc @@ -33,7 +33,7 @@ void test01() const char* name = "stdiobuf-1.txt"; FILE* fout = fopen(name, "w"); - fwrite(c_lit, 1, size, fout); + VERIFY( fwrite(c_lit, 1, size, fout) == size ); fclose(fout); FILE* fin = fopen(name, "r"); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc index 6b0cee4db92..61e7a553482 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc @@ -33,7 +33,7 @@ void test01() const char* name = "stdiobuf-1.txt"; FILE* fout = fopen(name, "w"); - fwrite(c_lit, 1, size, fout); + VERIFY( fwrite(c_lit, 1, size, fout) == size ); fclose(fout); FILE* fin = fopen(name, "r"); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc index aeb957618ae..fa754c459d0 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc @@ -64,7 +64,7 @@ void test01() fputs(str, file); fclose(file); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); streamsize n = wcin.rdbuf()->in_avail(); while (n--) diff --git a/libstdc++-v3/testsuite/util/testsuite_hooks.h b/libstdc++-v3/testsuite/util/testsuite_hooks.h index da51d37ae62..fe41b1cb3e6 100644 --- a/libstdc++-v3/testsuite/util/testsuite_hooks.h +++ b/libstdc++-v3/testsuite/util/testsuite_hooks.h @@ -1,7 +1,8 @@ // -*- C++ -*- // Utility subroutines for the C++ library testsuite. // -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, +// 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -59,7 +60,7 @@ # include # define VERIFY(fn) assert(fn) #else -# define VERIFY(fn) test &= (fn) +# define VERIFY(fn) test &= bool(fn) #endif #ifdef _GLIBCXX_HAVE_UNISTD_H