1//===----------------------------------------------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is dual licensed under the MIT and the University of Illinois Open 6// Source Licenses. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10// <iomanip> 11 12// T6 setw(int n); 13 14#include <iomanip> 15#include <cassert> 16 17template <class CharT> 18struct testbuf 19 : public std::basic_streambuf<CharT> 20{ 21 testbuf() {} 22}; 23 24int main() 25{ 26 { 27 testbuf<char> sb; 28 std::istream is(&sb); 29 is >> std::setw(10); 30 assert(is.width() == 10); 31 } 32 { 33 testbuf<char> sb; 34 std::ostream os(&sb); 35 os << std::setw(10); 36 assert(os.width() == 10); 37 } 38 { 39 testbuf<wchar_t> sb; 40 std::wistream is(&sb); 41 is >> std::setw(10); 42 assert(is.width() == 10); 43 } 44 { 45 testbuf<wchar_t> sb; 46 std::wostream os(&sb); 47 os << std::setw(10); 48 assert(os.width() == 10); 49 } 50} 51