//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is dual licensed under the MIT and the University of Illinois Open // Source Licenses. 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()); } }