]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/smart_ptr/test/sp_recursive_assign2_rv_test.cpp
06864ad5e9c8079da605073af3de2755f828edec
2 // sp_recursive_assign2_rv_test.cpp
4 // Copyright 2009 Peter Dimov
6 // Distributed under the Boost Software License, Version 1.0.
7 // See accompanying file LICENSE_1_0.txt or copy at
8 // http://www.boost.org/LICENSE_1_0.txt
12 #include <boost/shared_ptr.hpp>
13 #include <boost/core/lightweight_test.hpp>
63 static boost::shared_ptr
<void> s_pv
;
79 s_pv
= boost::shared_ptr
<Y
>( new Y
);
91 BOOST_TEST( X::instances
== 0 );
92 BOOST_TEST( Y::instances
== 0 );
93 BOOST_TEST( Z::instances
== 0 );
95 s_pv
= boost::shared_ptr
<Z
>( new Z
);
97 BOOST_TEST( X::instances
== 0 );
98 BOOST_TEST( Y::instances
== 0 );
99 BOOST_TEST( Z::instances
== 1 );
101 s_pv
= boost::shared_ptr
<X
>( new X
);
103 BOOST_TEST( X::instances
== 0 );
104 BOOST_TEST( Y::instances
== 1 );
105 BOOST_TEST( Z::instances
== 0 );
107 s_pv
= boost::shared_ptr
<Y
>();
109 BOOST_TEST( X::instances
== 0 );
110 BOOST_TEST( Y::instances
== 0 );
111 BOOST_TEST( Z::instances
== 0 );
113 return boost::report_errors();