block">
typedef boost::python::class_&lt;
    class_type&lt;B&gt;, copyable&lt;boost::noncopyable&gt;
&gt; c1;

typedef boost::python::class_&lt;
    D, held_type&lt;std::auto_ptr&lt;D&gt; &gt;, base_list&lt;bases&lt;B&gt; &gt;
&gt; c2;
</pre>
<!-- @example.prepend('''
using boost::python::class_type;
using boost::python::copyable;
using boost::python::held_type;
using boost::python::base_list;
using boost::python::bases;

struct B {};
struct D {};''') -->
<p class="compound-middle">we can now examine the i