libcxx initial import
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103490 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// void state(stateT s);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::fpos<int> f;
|
||||
f.state(3);
|
||||
assert(f.state() == 3);
|
||||
}
|
@@ -0,0 +1,28 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// Addition
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(5);
|
||||
std::streamoff o(6);
|
||||
P q = p + o;
|
||||
assert(q == P(11));
|
||||
p += o;
|
||||
assert(p == q);
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// fpos(int)
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(5);
|
||||
assert(p == P(5));
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// Subraction with fpos
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(11);
|
||||
P q(6);
|
||||
std::streamoff o = p - q;
|
||||
assert(o == 5);
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// == and !=
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(5);
|
||||
P q(6);
|
||||
assert(p == p);
|
||||
assert(p != q);
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// converts to and from streamoff
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(std::streamoff(7));
|
||||
std::streamoff offset(p);
|
||||
assert(offset == 7);
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// streamsize and streamoff interconvert
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::streamoff o(5);
|
||||
std::streamsize sz(o);
|
||||
assert(sz == 5);
|
||||
std::streamoff o2(sz);
|
||||
assert(o == o2);
|
||||
}
|
@@ -0,0 +1,28 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class StateT> class fpos
|
||||
|
||||
// Subraction with offset
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
typedef std::fpos<std::mbstate_t> P;
|
||||
P p(11);
|
||||
std::streamoff o(6);
|
||||
P q = p - o;
|
||||
assert(q == P(5));
|
||||
p -= o;
|
||||
assert(p == q);
|
||||
}
|
12
test/input.output/iostreams.base/fpos/nothing_to_do.pass.cpp
Normal file
12
test/input.output/iostreams.base/fpos/nothing_to_do.pass.cpp
Normal file
@@ -0,0 +1,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
@@ -0,0 +1,33 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// fmtflags flags() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
const test t;
|
||||
assert(t.flags() == (test::skipws | test::dec));
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// fmtflags flags(fmtflags fmtfl);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.flags() == (test::skipws | test::dec));
|
||||
test::fmtflags f = t.flags(test::hex | test::right);
|
||||
assert(f == (test::skipws | test::dec));
|
||||
assert(t.flags() == (test::hex | test::right));
|
||||
}
|
@@ -0,0 +1,33 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// streamsize precision() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
const test t;
|
||||
assert(t.precision() == 6);
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// streamsize precision(streamsize prec);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.precision() == 6);
|
||||
std::streamsize p = t.precision(10);
|
||||
assert(p == 6);
|
||||
assert(t.precision() == 10);
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// fmtflags setf(fmtflags fmtfl)
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.flags() == (test::skipws | test::dec));
|
||||
test::fmtflags f = t.setf(test::hex | test::right);
|
||||
assert(f == (test::skipws | test::dec));
|
||||
assert(t.flags() == (test::skipws | test::dec | test::hex | test::right));
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// fmtflags setf(fmtflags fmtfl, fmtflags mask);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.flags() == (test::skipws | test::dec));
|
||||
test::fmtflags f = t.setf(test::hex | test::right, test::dec | test::right);
|
||||
assert(f == (test::skipws | test::dec));
|
||||
assert(t.flags() == (test::skipws | test::right));
|
||||
}
|
@@ -0,0 +1,35 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// void unsetf(fmtflags mask);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.flags() == (test::skipws | test::dec));
|
||||
t.unsetf(test::dec | test::right);
|
||||
assert(t.flags() == test::skipws);
|
||||
}
|
@@ -0,0 +1,33 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// streamsize width() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
const test t;
|
||||
assert(t.width() == 0);
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// streamsize width(streamsize wide);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
assert(t.width() == 0);
|
||||
std::streamsize w = t.width(4);
|
||||
assert(w == 0);
|
||||
assert(t.width() == 4);
|
||||
}
|
@@ -0,0 +1,52 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// void register_callback(event_callback fn, int index);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <locale>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int f1_called = 0;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 4);
|
||||
++f1_called;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
std::ios_base& b = t;
|
||||
b.register_callback(f1, 4);
|
||||
b.register_callback(f1, 4);
|
||||
b.register_callback(f1, 4);
|
||||
std::locale l = b.imbue(std::locale("en_US"));
|
||||
assert(f1_called == 3);
|
||||
}
|
@@ -0,0 +1,86 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ~ios_base()
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <locale>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
bool f3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::erase_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert( f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "C");
|
||||
assert(index == 4);
|
||||
f1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::erase_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "C");
|
||||
assert(index == 5);
|
||||
f2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::erase_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!f3_called);
|
||||
assert(stream.getloc().name() == "C");
|
||||
assert(index == 6);
|
||||
f3_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
test t;
|
||||
std::ios_base& b = t;
|
||||
b.register_callback(f1, 4);
|
||||
b.register_callback(f2, 5);
|
||||
b.register_callback(f3, 6);
|
||||
}
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
assert(f3_called);
|
||||
}
|
@@ -0,0 +1,34 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// locale getloc() const;
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
const test t;
|
||||
assert(t.getloc().name() == std::string("C"));
|
||||
}
|
@@ -0,0 +1,87 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// locale imbue(const locale& loc);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <locale>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
bool f3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert( f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 4);
|
||||
f1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 5);
|
||||
f2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 6);
|
||||
f3_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
std::ios_base& b = t;
|
||||
b.register_callback(f1, 4);
|
||||
b.register_callback(f2, 5);
|
||||
b.register_callback(f3, 6);
|
||||
std::locale l = b.imbue(std::locale("en_US"));
|
||||
assert(l.name() == std::string("C"));
|
||||
assert(b.getloc().name() == std::string("en_US"));
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
assert(f3_called);
|
||||
}
|
@@ -0,0 +1,42 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// long& iword(int idx);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
std::ios_base& b = t;
|
||||
for (int i = 0; i < 10000; ++i)
|
||||
{
|
||||
assert(b.iword(i) == 0);
|
||||
b.iword(i) = i;
|
||||
assert(b.iword(i) == i);
|
||||
for (int j = 0; j <= i; ++j)
|
||||
assert(b.iword(j) == j);
|
||||
}
|
||||
}
|
@@ -0,0 +1,42 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// void*& pword(int idx);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <cassert>
|
||||
|
||||
class test
|
||||
: public std::ios
|
||||
{
|
||||
public:
|
||||
test()
|
||||
{
|
||||
init(0);
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
test t;
|
||||
std::ios_base& b = t;
|
||||
for (int i = 0; i < 10000; ++i)
|
||||
{
|
||||
assert(b.pword(i) == 0);
|
||||
b.pword(i) = (void*)i;
|
||||
assert(b.pword(i) == (void*)i);
|
||||
for (int j = 0; j <= i; ++j)
|
||||
assert(b.pword(j) == (void*)j);
|
||||
}
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// static int xalloc();
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(std::ios_base::xalloc() == 0);
|
||||
assert(std::ios_base::xalloc() == 1);
|
||||
assert(std::ios_base::xalloc() == 2);
|
||||
assert(std::ios_base::xalloc() == 3);
|
||||
assert(std::ios_base::xalloc() == 4);
|
||||
}
|
@@ -0,0 +1,27 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// bool sync_with_stdio(bool sync = true);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert( std::ios_base::sync_with_stdio(false));
|
||||
assert(!std::ios_base::sync_with_stdio(false));
|
||||
assert(!std::ios_base::sync_with_stdio(true));
|
||||
assert( std::ios_base::sync_with_stdio(true));
|
||||
assert( std::ios_base::sync_with_stdio());
|
||||
assert( std::ios_base::sync_with_stdio(false));
|
||||
assert(!std::ios_base::sync_with_stdio());
|
||||
assert( std::ios_base::sync_with_stdio());
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
@@ -0,0 +1,39 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base::failure
|
||||
|
||||
// explicit failure(const char* msg, const error_code& ec = io_errc::stream);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::string what_arg("io test message");
|
||||
std::ios_base::failure se(what_arg.c_str(), make_error_code(std::errc::is_a_directory));
|
||||
assert(se.code() == std::make_error_code(std::errc::is_a_directory));
|
||||
std::string what_message(se.what());
|
||||
assert(what_message.find(what_arg) != std::string::npos);
|
||||
assert(what_message.find("Is a directory") != std::string::npos);
|
||||
}
|
||||
{
|
||||
std::string what_arg("io test message");
|
||||
std::ios_base::failure se(what_arg.c_str());
|
||||
assert(se.code() == std::make_error_code(std::io_errc::stream));
|
||||
std::string what_message(se.what());
|
||||
assert(what_message.find(what_arg) != std::string::npos);
|
||||
assert(what_message.find(std::iostream_category().message(static_cast<int>
|
||||
(std::io_errc::stream))) != std::string::npos);
|
||||
}
|
||||
}
|
@@ -0,0 +1,39 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base::failure
|
||||
|
||||
// explicit failure(const string& msg, const error_code& ec = io_errc::stream);
|
||||
|
||||
#include <ios>
|
||||
#include <string>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::string what_arg("io test message");
|
||||
std::ios_base::failure se(what_arg, make_error_code(std::errc::is_a_directory));
|
||||
assert(se.code() == std::make_error_code(std::errc::is_a_directory));
|
||||
std::string what_message(se.what());
|
||||
assert(what_message.find(what_arg) != std::string::npos);
|
||||
assert(what_message.find("Is a directory") != std::string::npos);
|
||||
}
|
||||
{
|
||||
std::string what_arg("io test message");
|
||||
std::ios_base::failure se(what_arg);
|
||||
assert(se.code() == std::make_error_code(std::io_errc::stream));
|
||||
std::string what_message(se.what());
|
||||
assert(what_message.find(what_arg) != std::string::npos);
|
||||
assert(what_message.find(std::iostream_category().message(static_cast<int>
|
||||
(std::io_errc::stream))) != std::string::npos);
|
||||
}
|
||||
}
|
@@ -0,0 +1,81 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// static const fmtflags boolalpha;
|
||||
// static const fmtflags dec;
|
||||
// static const fmtflags fixed;
|
||||
// static const fmtflags hex;
|
||||
// static const fmtflags internal;
|
||||
// static const fmtflags left;
|
||||
// static const fmtflags oct;
|
||||
// static const fmtflags right;
|
||||
// static const fmtflags scientific;
|
||||
// static const fmtflags showbase;
|
||||
// static const fmtflags showpoint;
|
||||
// static const fmtflags showpos;
|
||||
// static const fmtflags skipws;
|
||||
// static const fmtflags unitbuf;
|
||||
// static const fmtflags uppercase;
|
||||
// static const fmtflags adjustfield = left | right | internal;
|
||||
// static const fmtflags basefield = dec | oct | hex;
|
||||
// static const fmtflags floatfield = scientific | fixed;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(std::ios_base::boolalpha);
|
||||
assert(std::ios_base::dec);
|
||||
assert(std::ios_base::fixed);
|
||||
assert(std::ios_base::hex);
|
||||
assert(std::ios_base::internal);
|
||||
assert(std::ios_base::left);
|
||||
assert(std::ios_base::oct);
|
||||
assert(std::ios_base::right);
|
||||
assert(std::ios_base::scientific);
|
||||
assert(std::ios_base::showbase);
|
||||
assert(std::ios_base::showpoint);
|
||||
assert(std::ios_base::showpos);
|
||||
assert(std::ios_base::skipws);
|
||||
assert(std::ios_base::unitbuf);
|
||||
assert(std::ios_base::uppercase);
|
||||
|
||||
assert
|
||||
(
|
||||
( std::ios_base::boolalpha
|
||||
& std::ios_base::dec
|
||||
& std::ios_base::fixed
|
||||
& std::ios_base::hex
|
||||
& std::ios_base::internal
|
||||
& std::ios_base::left
|
||||
& std::ios_base::oct
|
||||
& std::ios_base::right
|
||||
& std::ios_base::scientific
|
||||
& std::ios_base::showbase
|
||||
& std::ios_base::showpoint
|
||||
& std::ios_base::showpos
|
||||
& std::ios_base::skipws
|
||||
& std::ios_base::unitbuf
|
||||
& std::ios_base::uppercase) == 0
|
||||
);
|
||||
|
||||
assert(std::ios_base::adjustfield == (std::ios_base::left
|
||||
| std::ios_base::right
|
||||
| std::ios_base::internal));
|
||||
assert(std::ios_base::basefield == (std::ios_base::dec
|
||||
| std::ios_base::oct
|
||||
| std::ios_base::hex));
|
||||
assert(std::ios_base::floatfield == (std::ios_base::scientific
|
||||
| std::ios_base::fixed));
|
||||
}
|
@@ -0,0 +1,36 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// static const iostate badbit;
|
||||
// static const iostate eofbit;
|
||||
// static const iostate failbit;
|
||||
// static const iostate goodbit = 0;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(std::ios_base::badbit);
|
||||
assert(std::ios_base::eofbit);
|
||||
assert(std::ios_base::failbit);
|
||||
|
||||
assert
|
||||
(
|
||||
( std::ios_base::badbit
|
||||
& std::ios_base::eofbit
|
||||
& std::ios_base::failbit) == 0
|
||||
);
|
||||
|
||||
assert(std::ios_base::goodbit == 0);
|
||||
}
|
@@ -0,0 +1,42 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// static const openmode app;
|
||||
// static const openmode ate;
|
||||
// static const openmode binary;
|
||||
// static const openmode in;
|
||||
// static const openmode out;
|
||||
// static const openmode trunc;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(std::ios_base::app);
|
||||
assert(std::ios_base::ate);
|
||||
assert(std::ios_base::binary);
|
||||
assert(std::ios_base::in);
|
||||
assert(std::ios_base::out);
|
||||
assert(std::ios_base::trunc);
|
||||
|
||||
assert
|
||||
(
|
||||
( std::ios_base::app
|
||||
& std::ios_base::ate
|
||||
& std::ios_base::binary
|
||||
& std::ios_base::in
|
||||
& std::ios_base::out
|
||||
& std::ios_base::trunc) == 0
|
||||
);
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// static const seekdir beg;
|
||||
// static const seekdir cur;
|
||||
// static const seekdir end;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(std::ios_base::beg != std::ios_base::cur);
|
||||
assert(std::ios_base::beg != std::ios_base::end);
|
||||
assert(std::ios_base::cur != std::ios_base::end);
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
@@ -0,0 +1,16 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
#include <ios>
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
@@ -0,0 +1,48 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// explicit basic_ios(basic_streambuf<charT,traits>* sb);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::streambuf* sb = 0;
|
||||
std::basic_ios<char> ios(sb);
|
||||
assert(ios.rdbuf() == sb);
|
||||
assert(ios.tie() == 0);
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
assert(ios.flags() == (std::ios::skipws | std::ios::dec));
|
||||
assert(ios.width() == 0);
|
||||
assert(ios.precision() == 6);
|
||||
assert(ios.fill() == ' ');
|
||||
assert(ios.getloc() == std::locale());
|
||||
}
|
||||
{
|
||||
std::streambuf* sb = (std::streambuf*)1;
|
||||
std::basic_ios<char> ios(sb);
|
||||
assert(ios.rdbuf() == sb);
|
||||
assert(ios.tie() == 0);
|
||||
assert(ios.rdstate() == std::ios::goodbit);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
assert(ios.flags() == (std::ios::skipws | std::ios::dec));
|
||||
assert(ios.width() == 0);
|
||||
assert(ios.precision() == 6);
|
||||
assert(ios.fill() == ' ');
|
||||
assert(ios.getloc() == std::locale());
|
||||
}
|
||||
}
|
@@ -0,0 +1,185 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// basic_ios& copyfmt(const basic_ios& rhs);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf
|
||||
: public std::streambuf
|
||||
{
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
|
||||
bool g1_called = false;
|
||||
bool g2_called = false;
|
||||
bool g3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::erase_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert( f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert(!g3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 4);
|
||||
f1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::erase_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert(!g3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 5);
|
||||
f2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void g1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::copyfmt_event)
|
||||
{
|
||||
assert( f1_called);
|
||||
assert( f2_called);
|
||||
assert(!g1_called);
|
||||
assert( g2_called);
|
||||
assert( g3_called);
|
||||
assert(stream.getloc().name() == "fr_FR");
|
||||
assert(index == 7);
|
||||
g1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void g2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::copyfmt_event)
|
||||
{
|
||||
assert( f1_called);
|
||||
assert( f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert( g3_called);
|
||||
assert(stream.getloc().name() == "fr_FR");
|
||||
assert(index == 8);
|
||||
g2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void g3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::copyfmt_event)
|
||||
{
|
||||
assert( f1_called);
|
||||
assert( f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert(!g3_called);
|
||||
assert(stream.getloc().name() == "fr_FR");
|
||||
assert(index == 9);
|
||||
g3_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb1;
|
||||
std::ios ios1(&sb1);
|
||||
ios1.flags(std::ios::boolalpha | std::ios::dec | std::ios::fixed);
|
||||
ios1.precision(1);
|
||||
ios1.width(11);
|
||||
ios1.imbue(std::locale("en_US"));
|
||||
ios1.exceptions(std::ios::failbit);
|
||||
ios1.setstate(std::ios::eofbit);
|
||||
ios1.register_callback(f1, 4);
|
||||
ios1.register_callback(f2, 5);
|
||||
ios1.iword(0) = 1;
|
||||
ios1.iword(1) = 2;
|
||||
ios1.iword(2) = 3;
|
||||
char c1, c2, c3;
|
||||
ios1.pword(0) = &c1;
|
||||
ios1.pword(1) = &c2;
|
||||
ios1.pword(2) = &c3;
|
||||
ios1.tie((std::ostream*)1);
|
||||
ios1.fill('1');
|
||||
|
||||
testbuf sb2;
|
||||
std::ios ios2(&sb2);
|
||||
ios2.flags(std::ios::showpoint | std::ios::uppercase);
|
||||
ios2.precision(2);
|
||||
ios2.width(12);
|
||||
ios2.imbue(std::locale("fr_FR"));
|
||||
ios2.exceptions(std::ios::eofbit);
|
||||
ios2.setstate(std::ios::goodbit);
|
||||
ios2.register_callback(g1, 7);
|
||||
ios2.register_callback(g2, 8);
|
||||
ios2.register_callback(g3, 9);
|
||||
ios2.iword(0) = 4;
|
||||
ios2.iword(1) = 5;
|
||||
ios2.iword(2) = 6;
|
||||
ios2.iword(3) = 7;
|
||||
ios2.iword(4) = 8;
|
||||
ios2.iword(5) = 9;
|
||||
char d1, d2;
|
||||
ios2.pword(0) = &d1;
|
||||
ios2.pword(1) = &d2;
|
||||
ios2.tie((std::ostream*)2);
|
||||
ios2.fill('2');
|
||||
|
||||
ios1.copyfmt(ios1);
|
||||
assert(!f1_called);
|
||||
|
||||
try
|
||||
{
|
||||
ios1.copyfmt(ios2);
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios_base::failure&)
|
||||
{
|
||||
}
|
||||
assert(ios1.rdstate() == std::ios::eofbit);
|
||||
assert(ios1.rdbuf() == &sb1);
|
||||
assert(ios1.flags() == (std::ios::showpoint | std::ios::uppercase));
|
||||
assert(ios1.precision() == 2);
|
||||
assert(ios1.width() == 12);
|
||||
assert(ios1.getloc().name() == "fr_FR");
|
||||
assert(ios1.exceptions() == std::ios::eofbit);
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
assert(g1_called);
|
||||
assert(g2_called);
|
||||
assert(g3_called);
|
||||
assert(ios1.iword(0) == 4);
|
||||
assert(ios1.iword(1) == 5);
|
||||
assert(ios1.iword(2) == 6);
|
||||
assert(ios1.iword(3) == 7);
|
||||
assert(ios1.iword(4) == 8);
|
||||
assert(ios1.iword(5) == 9);
|
||||
assert(ios1.pword(0) == &d1);
|
||||
assert(ios1.pword(1) == &d2);
|
||||
assert(ios1.tie() == (std::ostream*)2);
|
||||
assert(ios1.fill() == '2');
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// char_type fill() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
const std::ios ios(0);
|
||||
assert(ios.fill() == ' ');
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// char_type fill(char_type fillch);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.fill() == ' ');
|
||||
char c = ios.fill('*');
|
||||
assert(c == ' ');
|
||||
assert(ios.fill() == '*');
|
||||
}
|
@@ -0,0 +1,99 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// locale imbue(const locale& loc);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf
|
||||
: public std::streambuf
|
||||
{
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
bool f3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert( f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 4);
|
||||
f1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert( f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 5);
|
||||
f2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void f3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!f3_called);
|
||||
assert(stream.getloc().name() == "en_US");
|
||||
assert(index == 6);
|
||||
f3_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
ios.register_callback(f1, 4);
|
||||
ios.register_callback(f2, 5);
|
||||
ios.register_callback(f3, 6);
|
||||
std::locale l = ios.imbue(std::locale("en_US"));
|
||||
assert(l.name() == std::string("C"));
|
||||
assert(ios.getloc().name() == std::string("en_US"));
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
assert(f3_called);
|
||||
}
|
||||
f1_called = false;
|
||||
f2_called = false;
|
||||
f3_called = false;
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
ios.register_callback(f1, 4);
|
||||
ios.register_callback(f2, 5);
|
||||
ios.register_callback(f3, 6);
|
||||
std::locale l = ios.imbue(std::locale("en_US"));
|
||||
assert(l.name() == std::string("C"));
|
||||
assert(ios.getloc().name() == std::string("en_US"));
|
||||
assert(sb.getloc().name() == std::string("en_US"));
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
assert(f3_called);
|
||||
}
|
||||
}
|
@@ -0,0 +1,136 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// void move(basic_ios&& rhs);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf
|
||||
: public std::streambuf
|
||||
{
|
||||
};
|
||||
|
||||
struct testios
|
||||
: public std::ios
|
||||
{
|
||||
testios() {}
|
||||
testios(std::streambuf* p) : std::ios(p) {}
|
||||
void move(std::ios& x) {std::ios::move(x);}
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
|
||||
bool g1_called = false;
|
||||
bool g2_called = false;
|
||||
bool g3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
f1_called = true;
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
f2_called = true;
|
||||
}
|
||||
|
||||
void g1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(index == 7);
|
||||
g1_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void g2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(index == 8);
|
||||
g2_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
void g3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
if (ev == std::ios_base::imbue_event)
|
||||
{
|
||||
assert(index == 9);
|
||||
g3_called = true;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
testios ios1;
|
||||
testbuf sb2;
|
||||
std::ios ios2(&sb2);
|
||||
ios2.flags(std::ios::showpoint | std::ios::uppercase);
|
||||
ios2.precision(2);
|
||||
ios2.width(12);
|
||||
ios2.imbue(std::locale("fr_FR"));
|
||||
ios2.exceptions(std::ios::eofbit);
|
||||
ios2.setstate(std::ios::goodbit);
|
||||
ios2.register_callback(g1, 7);
|
||||
ios2.register_callback(g2, 8);
|
||||
ios2.register_callback(g3, 9);
|
||||
ios2.iword(0) = 4;
|
||||
ios2.iword(1) = 5;
|
||||
ios2.iword(2) = 6;
|
||||
ios2.iword(3) = 7;
|
||||
ios2.iword(4) = 8;
|
||||
ios2.iword(5) = 9;
|
||||
char d1, d2;
|
||||
ios2.pword(0) = &d1;
|
||||
ios2.pword(1) = &d2;
|
||||
ios2.tie((std::ostream*)2);
|
||||
ios2.fill('2');
|
||||
|
||||
ios1.move(ios2);
|
||||
|
||||
assert(ios1.rdstate() == std::ios::goodbit);
|
||||
assert(ios1.rdbuf() == 0);
|
||||
assert(ios1.flags() == (std::ios::showpoint | std::ios::uppercase));
|
||||
assert(ios1.precision() == 2);
|
||||
assert(ios1.width() == 12);
|
||||
assert(ios1.getloc().name() == "fr_FR");
|
||||
assert(ios1.exceptions() == std::ios::eofbit);
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert(!g3_called);
|
||||
assert(ios1.iword(0) == 4);
|
||||
assert(ios1.iword(1) == 5);
|
||||
assert(ios1.iword(2) == 6);
|
||||
assert(ios1.iword(3) == 7);
|
||||
assert(ios1.iword(4) == 8);
|
||||
assert(ios1.iword(5) == 9);
|
||||
assert(ios1.pword(0) == &d1);
|
||||
assert(ios1.pword(1) == &d2);
|
||||
assert(ios1.tie() == (std::ostream*)2);
|
||||
assert(ios1.fill() == '2');
|
||||
ios1.imbue(std::locale("C"));
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(g1_called);
|
||||
assert(g2_called);
|
||||
assert(g3_called);
|
||||
|
||||
assert(ios2.rdbuf() == &sb2);
|
||||
assert(ios2.tie() == 0);
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// char narrow(char_type c, char dfault) const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
const std::ios ios(0);
|
||||
assert(ios.narrow('c', '*') == 'c');
|
||||
assert(ios.narrow('\xFE', '*') == '*');
|
||||
}
|
@@ -0,0 +1,31 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// basic_streambuf<charT,traits>* rdbuf() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
const std::ios ios(0);
|
||||
assert(ios.rdbuf() == 0);
|
||||
}
|
||||
{
|
||||
std::streambuf* sb = (std::streambuf*)1;
|
||||
const std::ios ios(sb);
|
||||
assert(ios.rdbuf() == sb);
|
||||
}
|
||||
}
|
@@ -0,0 +1,34 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// basic_streambuf<charT,traits>* rdbuf(basic_streambuf<charT,traits>* sb);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.rdbuf() == 0);
|
||||
assert(!ios.good());
|
||||
std::streambuf* sb = (std::streambuf*)1;
|
||||
std::streambuf* sb2 = ios.rdbuf(sb);
|
||||
assert(sb2 == 0);
|
||||
assert(ios.rdbuf() == sb);
|
||||
assert(ios.good());
|
||||
sb2 = ios.rdbuf(0);
|
||||
assert(sb2 == (std::streambuf*)1);
|
||||
assert(ios.rdbuf() == 0);
|
||||
assert(ios.bad());
|
||||
}
|
@@ -0,0 +1,57 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// void set_rdbuf(basic_streambuf<charT, traits>* sb);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf
|
||||
: public std::streambuf
|
||||
{
|
||||
};
|
||||
|
||||
struct testios
|
||||
: public std::ios
|
||||
{
|
||||
testios(std::streambuf* p) : std::ios(p) {}
|
||||
void set_rdbuf(std::streambuf* x) {std::ios::set_rdbuf(x);}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb1;
|
||||
testbuf sb2;
|
||||
testios ios(&sb1);
|
||||
try
|
||||
{
|
||||
ios.setstate(std::ios::badbit);
|
||||
ios.exceptions(std::ios::badbit);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
}
|
||||
ios.set_rdbuf(&sb2);
|
||||
assert(ios.rdbuf() == &sb2);
|
||||
try
|
||||
{
|
||||
ios.setstate(std::ios::badbit);
|
||||
ios.exceptions(std::ios::badbit);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
}
|
||||
ios.set_rdbuf(0);
|
||||
assert(ios.rdbuf() == 0);
|
||||
}
|
@@ -0,0 +1,163 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// void move(basic_ios&& rhs);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf
|
||||
: public std::streambuf
|
||||
{
|
||||
};
|
||||
|
||||
struct testios
|
||||
: public std::ios
|
||||
{
|
||||
testios(std::streambuf* p) : std::ios(p) {}
|
||||
void swap(std::ios& x) {std::ios::swap(x);}
|
||||
};
|
||||
|
||||
bool f1_called = false;
|
||||
bool f2_called = false;
|
||||
|
||||
bool g1_called = false;
|
||||
bool g2_called = false;
|
||||
bool g3_called = false;
|
||||
|
||||
void f1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
assert(index == 4);
|
||||
f1_called = true;
|
||||
}
|
||||
|
||||
void f2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
assert(index == 5);
|
||||
f2_called = true;
|
||||
}
|
||||
|
||||
void g1(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
assert(index == 7);
|
||||
g1_called = true;
|
||||
}
|
||||
|
||||
void g2(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
assert(index == 8);
|
||||
g2_called = true;
|
||||
}
|
||||
|
||||
void g3(std::ios_base::event ev, std::ios_base& stream, int index)
|
||||
{
|
||||
assert(index == 9);
|
||||
g3_called = true;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb1;
|
||||
testios ios1(&sb1);
|
||||
ios1.flags(std::ios::boolalpha | std::ios::dec | std::ios::fixed);
|
||||
ios1.precision(1);
|
||||
ios1.width(11);
|
||||
ios1.imbue(std::locale("en_US"));
|
||||
ios1.exceptions(std::ios::failbit);
|
||||
ios1.setstate(std::ios::eofbit);
|
||||
ios1.register_callback(f1, 4);
|
||||
ios1.register_callback(f2, 5);
|
||||
ios1.iword(0) = 1;
|
||||
ios1.iword(1) = 2;
|
||||
ios1.iword(2) = 3;
|
||||
char c1, c2, c3;
|
||||
ios1.pword(0) = &c1;
|
||||
ios1.pword(1) = &c2;
|
||||
ios1.pword(2) = &c3;
|
||||
ios1.tie((std::ostream*)1);
|
||||
ios1.fill('1');
|
||||
|
||||
testbuf sb2;
|
||||
testios ios2(&sb2);
|
||||
ios2.flags(std::ios::showpoint | std::ios::uppercase);
|
||||
ios2.precision(2);
|
||||
ios2.width(12);
|
||||
ios2.imbue(std::locale("fr_FR"));
|
||||
ios2.exceptions(std::ios::eofbit);
|
||||
ios2.setstate(std::ios::goodbit);
|
||||
ios2.register_callback(g1, 7);
|
||||
ios2.register_callback(g2, 8);
|
||||
ios2.register_callback(g3, 9);
|
||||
ios2.iword(0) = 4;
|
||||
ios2.iword(1) = 5;
|
||||
ios2.iword(2) = 6;
|
||||
ios2.iword(3) = 7;
|
||||
ios2.iword(4) = 8;
|
||||
ios2.iword(5) = 9;
|
||||
char d1, d2;
|
||||
ios2.pword(0) = &d1;
|
||||
ios2.pword(1) = &d2;
|
||||
ios2.tie((std::ostream*)2);
|
||||
ios2.fill('2');
|
||||
|
||||
ios1.swap(ios2);
|
||||
|
||||
assert(ios1.rdstate() == std::ios::goodbit);
|
||||
assert(ios1.rdbuf() == &sb1);
|
||||
assert(ios1.flags() == (std::ios::showpoint | std::ios::uppercase));
|
||||
assert(ios1.precision() == 2);
|
||||
assert(ios1.width() == 12);
|
||||
assert(ios1.getloc().name() == "fr_FR");
|
||||
assert(ios1.exceptions() == std::ios::eofbit);
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(!g1_called);
|
||||
assert(!g2_called);
|
||||
assert(!g3_called);
|
||||
assert(ios1.iword(0) == 4);
|
||||
assert(ios1.iword(1) == 5);
|
||||
assert(ios1.iword(2) == 6);
|
||||
assert(ios1.iword(3) == 7);
|
||||
assert(ios1.iword(4) == 8);
|
||||
assert(ios1.iword(5) == 9);
|
||||
assert(ios1.pword(0) == &d1);
|
||||
assert(ios1.pword(1) == &d2);
|
||||
assert(ios1.tie() == (std::ostream*)2);
|
||||
assert(ios1.fill() == '2');
|
||||
ios1.imbue(std::locale("C"));
|
||||
assert(!f1_called);
|
||||
assert(!f2_called);
|
||||
assert(g1_called);
|
||||
assert(g2_called);
|
||||
assert(g3_called);
|
||||
|
||||
assert(ios2.rdstate() == std::ios::eofbit);
|
||||
assert(ios2.rdbuf() == &sb2);
|
||||
assert(ios2.flags() == (std::ios::boolalpha | std::ios::dec | std::ios::fixed));
|
||||
assert(ios2.precision() == 1);
|
||||
assert(ios2.width() == 11);
|
||||
assert(ios2.getloc().name() == "en_US");
|
||||
assert(ios2.exceptions() == std::ios::failbit);
|
||||
assert(ios2.iword(0) == 1);
|
||||
assert(ios2.iword(1) == 2);
|
||||
assert(ios2.iword(2) == 3);
|
||||
assert(ios2.pword(0) == &c1);
|
||||
assert(ios2.pword(1) == &c2);
|
||||
assert(ios2.pword(2) == &c3);
|
||||
assert(ios2.tie() == (std::ostream*)1);
|
||||
assert(ios2.fill() == '1');
|
||||
ios2.imbue(std::locale("C"));
|
||||
assert(f1_called);
|
||||
assert(f2_called);
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// basic_ostream<charT,traits>* tie() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
const std::basic_ios<char> ios(0);
|
||||
assert(ios.tie() == 0);
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// basic_ostream<charT,traits>* tie(basic_ostream<charT,traits>* tiestr);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
std::ostream* os = (std::ostream*)1;
|
||||
std::ostream* r = ios.tie(os);
|
||||
assert(r == 0);
|
||||
assert(ios.tie() == os);
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// char_type widen(char c) const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
const std::ios ios(0);
|
||||
assert(ios.widen('c') == 'c');
|
||||
}
|
@@ -0,0 +1,41 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// bool bad() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.bad());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(ios.bad());
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
assert(!ios.bad());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(!ios.bad());
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(!ios.bad());
|
||||
ios.setstate(std::ios::badbit);
|
||||
assert(ios.bad());
|
||||
}
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// operator unspecified-bool-type() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(static_cast<bool>(ios) == !ios.fail());
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(static_cast<bool>(ios) == !ios.fail());
|
||||
}
|
@@ -0,0 +1,65 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// void clear(iostate state = goodbit);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
ios.clear();
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
try
|
||||
{
|
||||
ios.exceptions(std::ios::badbit);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
}
|
||||
try
|
||||
{
|
||||
ios.clear();
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios::failure&)
|
||||
{
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
}
|
||||
try
|
||||
{
|
||||
ios.clear(std::ios::eofbit);
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios::failure&)
|
||||
{
|
||||
assert(ios.rdstate() == (std::ios::eofbit | std::ios::badbit));
|
||||
}
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
ios.clear();
|
||||
assert(ios.rdstate() == std::ios::goodbit);
|
||||
ios.exceptions(std::ios::badbit);
|
||||
ios.clear();
|
||||
assert(ios.rdstate() == std::ios::goodbit);
|
||||
ios.clear(std::ios::eofbit);
|
||||
assert(ios.rdstate() == std::ios::eofbit);
|
||||
}
|
||||
}
|
@@ -0,0 +1,37 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// bool eof() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(!ios.eof());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(ios.eof());
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
assert(!ios.eof());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(ios.eof());
|
||||
}
|
||||
}
|
@@ -0,0 +1,33 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// iostate exceptions() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
const std::ios ios(0);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
const std::ios ios(&sb);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
}
|
||||
}
|
@@ -0,0 +1,48 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// iostate exceptions() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
ios.exceptions(std::ios::eofbit);
|
||||
assert(ios.exceptions() == std::ios::eofbit);
|
||||
try
|
||||
{
|
||||
ios.exceptions(std::ios::badbit);
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios::failure&)
|
||||
{
|
||||
}
|
||||
assert(ios.exceptions() == std::ios::badbit);
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
assert(ios.exceptions() == std::ios::goodbit);
|
||||
ios.exceptions(std::ios::eofbit);
|
||||
assert(ios.exceptions() == std::ios::eofbit);
|
||||
ios.exceptions(std::ios::badbit);
|
||||
assert(ios.exceptions() == std::ios::badbit);
|
||||
}
|
||||
}
|
@@ -0,0 +1,41 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// bool fail() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.fail());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(ios.fail());
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
assert(!ios.fail());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(!ios.fail());
|
||||
ios.setstate(std::ios::badbit);
|
||||
assert(ios.fail());
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(ios.fail());
|
||||
}
|
||||
}
|
@@ -0,0 +1,35 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// bool good() const;
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(!ios.good());
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
assert(ios.good());
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(!ios.good());
|
||||
}
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// bool operator!() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(!ios == ios.fail());
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(!ios == ios.fail());
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// iostate rdstate() const;
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::ios ios(0);
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(ios.rdstate() == (std::ios::failbit | std::ios::badbit));
|
||||
}
|
@@ -0,0 +1,64 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits> class basic_ios
|
||||
|
||||
// void setstate(iostate state);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::ios ios(0);
|
||||
ios.setstate(std::ios::goodbit);
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
try
|
||||
{
|
||||
ios.exceptions(std::ios::badbit);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
}
|
||||
try
|
||||
{
|
||||
ios.setstate(std::ios::goodbit);
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios::failure&)
|
||||
{
|
||||
assert(ios.rdstate() == std::ios::badbit);
|
||||
}
|
||||
try
|
||||
{
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(false);
|
||||
}
|
||||
catch (std::ios::failure&)
|
||||
{
|
||||
assert(ios.rdstate() == (std::ios::eofbit | std::ios::badbit));
|
||||
}
|
||||
}
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
ios.setstate(std::ios::goodbit);
|
||||
assert(ios.rdstate() == std::ios::goodbit);
|
||||
ios.setstate(std::ios::eofbit);
|
||||
assert(ios.rdstate() == std::ios::eofbit);
|
||||
ios.setstate(std::ios::failbit);
|
||||
assert(ios.rdstate() == (std::ios::eofbit | std::ios::failbit));
|
||||
}
|
||||
}
|
33
test/input.output/iostreams.base/ios/types.pass.cpp
Normal file
33
test/input.output/iostreams.base/ios/types.pass.cpp
Normal file
@@ -0,0 +1,33 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// template <class charT, class traits = char_traits<charT> >
|
||||
// class basic_ios : public ios_base
|
||||
// {
|
||||
// public:
|
||||
// typedef charT char_type;
|
||||
// typedef typename traits::int_type int_type;
|
||||
// typedef typename traits::pos_type pos_type;
|
||||
// typedef typename traits::off_type off_type;
|
||||
// typedef traits traits_type;
|
||||
|
||||
#include <ios>
|
||||
#include <type_traits>
|
||||
|
||||
int main()
|
||||
{
|
||||
static_assert((std::is_base_of<std::ios_base, std::basic_ios<char> >::value), "");
|
||||
static_assert((std::is_same<std::basic_ios<char>::char_type, char>::value), "");
|
||||
static_assert((std::is_same<std::basic_ios<char>::traits_type, std::char_traits<char> >::value), "");
|
||||
static_assert((std::is_same<std::basic_ios<char>::int_type, std::char_traits<char>::int_type>::value), "");
|
||||
static_assert((std::is_same<std::basic_ios<char>::pos_type, std::char_traits<char>::pos_type>::value), "");
|
||||
static_assert((std::is_same<std::basic_ios<char>::off_type, std::char_traits<char>::off_type>::value), "");
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& internal(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::internal(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::internal);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& left(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::left(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::left);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& right(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::right(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::right);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& dec(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::dec(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::dec);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& hex(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::hex(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::hex);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& oct(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::oct(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::oct);
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// const error_category& iostream_category();
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
#include <string>
|
||||
|
||||
int main()
|
||||
{
|
||||
const std::error_category& e_cat1 = std::iostream_category();
|
||||
std::string m1 = e_cat1.name();
|
||||
assert(m1 == "iostream");
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// error_code make_error_code(io_errc e);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
std::error_code ec = make_error_code(std::io_errc::stream);
|
||||
assert(ec.value() == static_cast<int>(std::io_errc::stream));
|
||||
assert(ec.category() == std::iostream_category());
|
||||
}
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// error_condition make_error_condition(io_errc e);
|
||||
|
||||
#include <ios>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
{
|
||||
const std::error_condition ec1 = std::make_error_condition(std::io_errc::stream);
|
||||
assert(ec1.value() == static_cast<int>(std::io_errc::stream));
|
||||
assert(ec1.category() == std::iostream_category());
|
||||
}
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& defaultfloat(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::defaultfloat(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::fixed));
|
||||
assert(!(ios.flags() & std::ios::scientific));
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& fixed(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::fixed(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::fixed);
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& hexfloat(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::hexfloat(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::fixed);
|
||||
assert(ios.flags() & std::ios::scientific);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& scientific(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::scientific(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::scientific);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& boolalpha(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::boolalpha(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::boolalpha);
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& noboolalpha(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::boolalpha(ios);
|
||||
std::ios_base& r = std::noboolalpha(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::boolalpha));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& noshowbase(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::showbase(ios);
|
||||
std::ios_base& r = std::noshowbase(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::showbase));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& noshowpoint(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::showpoint(ios);
|
||||
std::ios_base& r = std::noshowpoint(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::showpoint));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& noshowpos(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::showpos(ios);
|
||||
std::ios_base& r = std::noshowpos(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::showpos));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& noskipws(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::skipws(ios);
|
||||
std::ios_base& r = std::noskipws(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::skipws));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& nounitbuf(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::unitbuf(ios);
|
||||
std::ios_base& r = std::nounitbuf(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::unitbuf));
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& nouppercase(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::uppercase(ios);
|
||||
std::ios_base& r = std::nouppercase(ios);
|
||||
assert(&r == &ios);
|
||||
assert(!(ios.flags() & std::ios::uppercase));
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& showbase(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::showbase(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::showbase);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& showpoint(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::showpoint(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::showpoint);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& showpos(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::showpos(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::showpos);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& skipws(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::skipws(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::skipws);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& unitbuf(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::unitbuf(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::unitbuf);
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// class ios_base
|
||||
|
||||
// ios_base& uppercase(ios_base& str);
|
||||
|
||||
#include <ios>
|
||||
#include <streambuf>
|
||||
#include <cassert>
|
||||
|
||||
struct testbuf : public std::streambuf {};
|
||||
|
||||
int main()
|
||||
{
|
||||
testbuf sb;
|
||||
std::ios ios(&sb);
|
||||
std::ios_base& r = std::uppercase(ios);
|
||||
assert(&r == &ios);
|
||||
assert(ios.flags() & std::ios::uppercase);
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
@@ -0,0 +1,21 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// typedef OFF_T streamoff;
|
||||
|
||||
#include <ios>
|
||||
#include <type_traits>
|
||||
|
||||
int main()
|
||||
{
|
||||
static_assert(std::is_integral<std::streamoff>::value, "");
|
||||
static_assert(std::is_signed<std::streamoff>::value, "");
|
||||
}
|
@@ -0,0 +1,21 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
// typedef SZ_T streamsize;
|
||||
|
||||
#include <ios>
|
||||
#include <type_traits>
|
||||
|
||||
int main()
|
||||
{
|
||||
static_assert(std::is_integral<std::streamsize>::value, "");
|
||||
static_assert(std::is_signed<std::streamsize>::value, "");
|
||||
}
|
20
test/input.output/iostreams.base/version.pass.cpp
Normal file
20
test/input.output/iostreams.base/version.pass.cpp
Normal file
@@ -0,0 +1,20 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// <ios>
|
||||
|
||||
#include <ios>
|
||||
|
||||
#ifndef _LIBCPP_VERSION
|
||||
#error _LIBCPP_VERSION not defined
|
||||
#endif
|
||||
|
||||
int main()
|
||||
{
|
||||
}
|
Reference in New Issue
Block a user