move_assign.pass.cpp revision 256813f4e7915d64776a4edd5f4765d893b9f062
1//===----------------------------------------------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10// <fstream> 11 12// template <class charT, class traits = char_traits<charT> > 13// class basic_ifstream 14 15// basic_ifstream& operator=(basic_ifstream&& rhs); 16 17#include <fstream> 18#include <cassert> 19 20int main() 21{ 22#ifdef _LIBCPP_MOVE 23 { 24 std::ifstream fso("test.dat"); 25 std::ifstream fs; 26 fs = move(fso); 27 double x = 0; 28 fs >> x; 29 assert(x == 3.25); 30 } 31 { 32 std::wifstream fso("test.dat"); 33 std::wifstream fs; 34 fs = move(fso); 35 double x = 0; 36 fs >> x; 37 assert(x == 3.25); 38 } 39#endif // _LIBCPP_MOVE 40} 41