X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=libstdc%2B%2B-v3%2Ftestsuite%2F27_io%2Fnarrow_stream_objects.cc;fp=libstdc%2B%2B-v3%2Ftestsuite%2F27_io%2Fnarrow_stream_objects.cc;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=0ee1fce5bfa6b3fa9ebc50b26513325cb0cf3182;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libstdc++-v3/testsuite/27_io/narrow_stream_objects.cc b/libstdc++-v3/testsuite/27_io/narrow_stream_objects.cc deleted file mode 100644 index 0ee1fce5..00000000 --- a/libstdc++-v3/testsuite/27_io/narrow_stream_objects.cc +++ /dev/null @@ -1,223 +0,0 @@ -// 2000-08-02 bkoz - -// Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 2, or (at your option) -// any later version. - -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING. If not, write to the Free -// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -// USA. - -// Include all the headers except for iostream. -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -//#include -#define VERIFY(x) x - -// Include iostream last, just to make is as difficult as possible to -// properly initialize the standard iostream objects. -#include - -// Make sure all the standard streams are defined. -int -test01() -{ - bool test = true; - - char array1[20]; - typedef std::ios::traits_type ctraits_type; - ctraits_type::int_type i = 15; - ctraits_type::copy(array1, "testing istream", i); - array1[i] = '\0'; - std::cout << "testing cout" << std::endl; - std::cerr << "testing cerr" << std::endl; - VERIFY( std::cerr.flags() & std::ios_base::unitbuf ); - std::clog << "testing clog" << std::endl; - // std::cin >> array1; // requires somebody to type something in. - VERIFY( std::cin.tie() == &std::cout ); - - return 0; -} - -// libstdc++/2523 -void test02() -{ - using namespace std; - int i; - cin >> i; - cout << "i == " << i << endl; -} - -// libstdc++/2523 -void test03() -{ - using namespace std; - ios_base::sync_with_stdio(false); - - int i; - cin >> i; - cout << "i == " << i << endl; -} - -// Interactive test, to be exercised as follows: -// assign stderr to stdout in shell command line, -// pipe stdout to cat process and/or redirect stdout to file. -// a.out >& output -// "hello fine world\n" should be written to stdout, and output, in -// proper order. This is a version of the scott snyder test taken -// from: http://gcc.gnu.org/ml/libstdc++/1999-q4/msg00108.html -void test04() -{ - using namespace std; - - cout << "hello "; - cout.flush(); - cerr << "fine "; - cerr.flush(); - cout << "world" << endl; - cout.flush(); -} - -// Interactive test, to be exercised as follows: -// run test under truss(1) or strace(1). Look at -// size and pattern of write system calls. -// Should be 2 or 3 write(1,[...]) calls when run interactively -// depending upon buffering mode enforced. -void test05() -{ - std::cout << "hello" << ' ' << "world" << std::endl; - std::cout << "Enter your name: "; - std::string s; - std::cin >> s; - std::cout << "hello " << s << std::endl; -} - -// libstdc++/5280 -// Interactive test: input "1234^D^D" for i should terminate for EOF. -void test06() -{ - using namespace std; - int i; - cin >> i; - if (!cin.good()) - { - cerr << endl; - cerr << "i == " << i << endl; - cerr << "cin.rdstate() == " << cin.rdstate() << endl; - cerr << "cin.bad() == " << cin.bad() << endl; - cerr << "cin.fail() == " << cin.fail() << endl; - cerr << "cin.eof() == " << cin.eof() << endl; - } - else - cerr << "i == " << i << endl; -} - -// libstdc++/6548 -void test07() -{ - bool test = true; - std::cout << "Enter 'test':"; - std::string s; - std::getline(std::cin, s, '\n'); - VERIFY( s == "test" ); -} - -// libstdc++/6648 -// Interactive tests: each one (run alone) must terminate upon a single '\n'. -void test08() -{ - bool test = true; - char buff[2048]; - std::cout << "Enter name: "; - std::cin.getline(buff, 2048); -} - -void test09() -{ - bool test = true; - std::cout << "Enter favorite beach: "; - std::cin.ignore(2048, '\n'); -} - -// http://gcc.gnu.org/ml/libstdc++/2002-08/msg00060.html -// Should only have to hit enter once. -void -test10() -{ - using namespace std; - cout << "Press ENTER once\n"; - cin.ignore(1); - cout << "_M_gcount: "<< cin.gcount() << endl; -} - -int -main() -{ - test01(); - - // test02(); - // test03(); - // test04(); - // test05(); - // test06(); - // test07(); - // test08(); - // test09(); - // test10(); - return 0; -}