]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/smart_ptr/test/get_local_deleter_array_test2.cpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / smart_ptr / test / get_local_deleter_array_test2.cpp
1 //
2 // get_local_deleter_test2.cpp
3 //
4 // Copyright 2002, 2017 Peter Dimov
5 //
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)
9 //
10
11 #include <boost/config.hpp>
12
13 #if defined( BOOST_NO_CXX11_RVALUE_REFERENCES ) || defined( BOOST_NO_CXX11_VARIADIC_TEMPLATES )
14
15 int main()
16 {
17 }
18
19 #else
20
21 #include <boost/smart_ptr/local_shared_ptr.hpp>
22 #include <boost/smart_ptr/make_local_shared.hpp>
23 #include <boost/core/lightweight_test.hpp>
24
25 struct deleter
26 {
27 };
28
29 struct deleter2;
30
31 struct X
32 {
33 };
34
35 int main()
36 {
37 {
38 boost::local_shared_ptr<X[]> p = boost::make_local_shared<X[]>( 1 );
39
40 BOOST_TEST(boost::get_deleter<void>(p) == 0);
41 BOOST_TEST(boost::get_deleter<void const>(p) == 0);
42 BOOST_TEST(boost::get_deleter<int>(p) == 0);
43 BOOST_TEST(boost::get_deleter<int const>(p) == 0);
44 BOOST_TEST(boost::get_deleter<X>(p) == 0);
45 BOOST_TEST(boost::get_deleter<X const>(p) == 0);
46 BOOST_TEST(boost::get_deleter<deleter>(p) == 0);
47 BOOST_TEST(boost::get_deleter<deleter const>(p) == 0);
48 BOOST_TEST(boost::get_deleter<deleter2>(p) == 0);
49 BOOST_TEST(boost::get_deleter<deleter2 const>(p) == 0);
50 }
51
52 {
53 boost::local_shared_ptr<X[1]> p = boost::make_local_shared<X[1]>();
54
55 BOOST_TEST(boost::get_deleter<void>(p) == 0);
56 BOOST_TEST(boost::get_deleter<void const>(p) == 0);
57 BOOST_TEST(boost::get_deleter<int>(p) == 0);
58 BOOST_TEST(boost::get_deleter<int const>(p) == 0);
59 BOOST_TEST(boost::get_deleter<X>(p) == 0);
60 BOOST_TEST(boost::get_deleter<X const>(p) == 0);
61 BOOST_TEST(boost::get_deleter<deleter>(p) == 0);
62 BOOST_TEST(boost::get_deleter<deleter const>(p) == 0);
63 BOOST_TEST(boost::get_deleter<deleter2>(p) == 0);
64 BOOST_TEST(boost::get_deleter<deleter2 const>(p) == 0);
65 }
66
67 return boost::report_errors();
68 }
69
70 struct deleter2
71 {
72 };
73
74 #endif