#include <ios>
#include <testsuite_hooks.h>
void test01()
{
bool test = true;
std::ios_base::fmtflags flag02, flag03;
const std::ios_base::fmtflags flag01 = std::ios_base::skipws
| std::ios_base::dec;
const std::locale glocale = std::locale();
std::ios ios_01(NULL);
std::ios::char_type ct01;
std::ios::char_type ct02('x');;
ios_01.imbue(glocale);
char c1 = ios_01.narrow(ct02, 0);
VERIFY( c1 == 'x' );
ct01 = ios_01.widen('c');
VERIFY( ct01 == 'c' );
#ifdef DEBUG_ASSERT
assert(test);
#endif
}
void test02()
{
bool test = true;
typedef std::ios_base::fmtflags fmtflags;
typedef std::ios_base::iostate iostate;
using std::ios_base;
iostate iostate02, iostate03;
const iostate iostate01 = std::ios_base::badbit | std::ios_base::eofbit;
const iostate iostate04 = std::ios_base::badbit;
const std::locale glocale = std::locale();
std::ios ios_01(NULL);
std::ios::char_type ct01;
std::ios::char_type ct02('x');;
VERIFY( ios_01.fail() );
VERIFY( !ios_01 );
iostate03 = ios_01.rdstate();
VERIFY( static_cast<bool>(iostate03 & std::ios_base::badbit) );
try {
ios_01.clear(std::ios_base::eofbit);
iostate02 = ios_01.rdstate();
VERIFY( static_cast<bool>(iostate02 & iostate01) );
}
catch(std::ios_base::failure& fail) {
VERIFY( false );
}
catch(...) {
VERIFY( false );
}
VERIFY( ios_01.exceptions() == std::ios_base::goodbit );
try {
ios_01.exceptions(std::ios_base::eofbit);
VERIFY( false );
}
catch(std::ios_base::failure& fail) {
iostate02 = ios_01.exceptions();
VERIFY( static_cast<bool>(iostate02 & std::ios_base::eofbit) );
}
catch(...) {
VERIFY( false );
}
std::ios ios_02(NULL);
ios_02.exceptions(std::ios_base::eofbit);
VERIFY( static_cast<bool>(ios_02.exceptions() & std::ios_base::eofbit) );
try {
ios_01.copyfmt(ios_02);
VERIFY( false );
}
catch(std::ios_base::failure& fail) {
VERIFY( true );
}
catch(...) {
VERIFY( false );
}
#ifdef DEBUG_ASSERT
assert(test);
#endif
}
int main() {
test01();
test02();
return 0;
}