id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 6981,Can't use boost::ptr_vector::auto_type as data member in GCC 4.6,Shuo Chen ,Thorsten Ottosen,"The following code failed to compile with g++ 4.6.3 on Ubuntu Linux 12.04 LTS. {{{ #include #include class Test : boost::noncopyable { }; class Pool : boost::noncopyable { public: Pool(); private: boost::ptr_vector::auto_type p_; }; Pool::Pool() { } }}} the error is {{{ In file included from /usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:22:0, from /usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:20, from /usr/include/boost/ptr_container/ptr_vector.hpp:20, from ptr_vec.cc:2: /usr/include/boost/ptr_container/detail/static_move_ptr.hpp: In instantiation of 'boost::ptr_container_detail::static_move_ptr > ::cant_move_from_const > >': ptr_vec.cc:17:12: instantiated from here /usr/include/boost/ptr_container/detail/static_move_ptr.hpp:168:57: error: no type named 'error' in 'class boost::ptr_container_detail::static_move_ptr > >, boost::heap_clone_allocator>::null_clone_allocator > >' }}} However, if I inline the constructor, it compiles fine. {{{ class PoolOkay : boost::noncopyable { public: PoolOkay() { // okay to inline constructor } private: boost::ptr_vector::auto_type p_; }; }}} Note: there is no error when compiling with g++ 4.4.3 I am not sure if it's a bug of ptr_container or gcc itself.",Bugs,new,To Be Determined,ptr_container,Boost 1.49.0,Problem,,,