]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/serialization/test/test_forward_list.cpp
5a162a5813a2bb18937ce6d2544045f9e7015fd9
1 /////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
4 // (C) Copyright 2002 Robert Ramey - http://www.rrsd.com .
5 // Use, modification and distribution is subject to the Boost Software
6 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
9 // should pass compilation and execution
11 #include <cstddef> // NULL
13 #include <cstdio> // remove
14 #if defined(BOOST_NO_STDC_NAMESPACE)
20 #include <boost/config.hpp>
21 #ifdef BOOST_NO_CXX11_HDR_FORWARD_LIST
22 #error this test presumes support for forward_list.hpp
24 #include <boost/serialization/forward_list.hpp>
26 #include <boost/archive/archive_exception.hpp>
27 #include "test_tools.hpp"
32 int test_main( int /* argc */, char* /* argv */[] )
34 const char * testfile
= boost::archive::tmpnam(NULL
);
35 std::forward_list
<A
> aslist
;
36 aslist
.push_front(A());
37 aslist
.push_front(A());
39 test_ostream
os(testfile
, TEST_STREAM_FLAGS
);
40 test_oarchive
oa(os
, TEST_ARCHIVE_FLAGS
);
41 oa
<< boost::serialization::make_nvp("aslist", aslist
);
43 std::forward_list
<A
> aslist1
;{
44 test_istream
is(testfile
, TEST_STREAM_FLAGS
);
45 test_iarchive
ia(is
, TEST_ARCHIVE_FLAGS
);
46 ia
>> boost::serialization::make_nvp("aslist", aslist1
);
48 BOOST_CHECK(aslist
== aslist1
);
49 std::remove(testfile
);