]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/smart_ptr/test/get_deleter_array_test.cpp
2 // get_deleter_array_test.cpp
4 // Copyright (c) 2002, 2011 Peter Dimov
6 // Distributed under the Boost Software License, Version 1.0. (See
7 // accompanying file LICENSE_1_0.txt or copy at
8 // http://www.boost.org/LICENSE_1_0.txt)
11 #include <boost/shared_array.hpp>
12 #include <boost/core/lightweight_test.hpp>
22 void operator()(void *)
24 BOOST_TEST(data
== 17041);
39 boost::shared_array
<X
> p
;
41 BOOST_TEST(boost::get_deleter
<void>(p
) == 0);
42 BOOST_TEST(boost::get_deleter
<void const>(p
) == 0);
43 BOOST_TEST(boost::get_deleter
<int>(p
) == 0);
44 BOOST_TEST(boost::get_deleter
<int const>(p
) == 0);
45 BOOST_TEST(boost::get_deleter
<X
>(p
) == 0);
46 BOOST_TEST(boost::get_deleter
<X
const>(p
) == 0);
47 BOOST_TEST(boost::get_deleter
<deleter
>(p
) == 0);
48 BOOST_TEST(boost::get_deleter
<deleter
const>(p
) == 0);
49 BOOST_TEST(boost::get_deleter
<deleter2
>(p
) == 0);
50 BOOST_TEST(boost::get_deleter
<deleter2
const>(p
) == 0);
54 boost::shared_array
<X
> p(new X
[1]);
56 BOOST_TEST(boost::get_deleter
<void>(p
) == 0);
57 BOOST_TEST(boost::get_deleter
<void const>(p
) == 0);
58 BOOST_TEST(boost::get_deleter
<int>(p
) == 0);
59 BOOST_TEST(boost::get_deleter
<int const>(p
) == 0);
60 BOOST_TEST(boost::get_deleter
<X
>(p
) == 0);
61 BOOST_TEST(boost::get_deleter
<X
const>(p
) == 0);
62 BOOST_TEST(boost::get_deleter
<deleter
>(p
) == 0);
63 BOOST_TEST(boost::get_deleter
<deleter
const>(p
) == 0);
64 BOOST_TEST(boost::get_deleter
<deleter2
>(p
) == 0);
65 BOOST_TEST(boost::get_deleter
<deleter2
const>(p
) == 0);
70 boost::shared_array
<X
> p(x
, deleter());
72 BOOST_TEST(boost::get_deleter
<void>(p
) == 0);
73 BOOST_TEST(boost::get_deleter
<void const>(p
) == 0);
74 BOOST_TEST(boost::get_deleter
<int>(p
) == 0);
75 BOOST_TEST(boost::get_deleter
<int const>(p
) == 0);
76 BOOST_TEST(boost::get_deleter
<X
>(p
) == 0);
77 BOOST_TEST(boost::get_deleter
<X
const>(p
) == 0);
78 BOOST_TEST(boost::get_deleter
<deleter2
>(p
) == 0);
79 BOOST_TEST(boost::get_deleter
<deleter2
const>(p
) == 0);
81 deleter
* q
= boost::get_deleter
<deleter
>(p
);
84 BOOST_TEST(q
->data
== 0);
88 deleter
const * r
= boost::get_deleter
<deleter
const>(p
);
91 BOOST_TEST(r
->data
== 17041);
94 return boost::report_errors();