id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 8055,Including boost/smart_ptr/shared_ptr.hpp produces warnings on clang with libc++,Michel Morin,Peter Dimov,"On clang with libc++ in a C++03 mode, including `boost/smart_ptr/shared_ptr.hpp` produces warnings. Here is a test case {{{ #include int main(int argc, char* argv[]) { return 0; } }}} and warnings {{{ boost/smart_ptr/shared_ptr.hpp:491:41: warning: rvalue references are a C++11 extension [-Wc++11-extensions] shared_ptr( std::unique_ptr< Y, D > && r ): px( r.get() ), pn() ^ boost/smart_ptr/shared_ptr.hpp:556:51: warning: rvalue references are a C++11 extension [-Wc++11-extensions] shared_ptr & operator=( std::unique_ptr && r ) ^ boost/smart_ptr/shared_ptr.hpp:558:55: warning: rvalue references are a C++11 extension [-Wc++11-extensions] this_type( static_cast< std::unique_ptr && >( r ) ).swap(*this); ^ }}} This is because `!defined(BOOST_NO_CXX11_SMART_PTR)` does not imply `!defined(BOOST_NO_CXX11_RVALUE_REFERENCES)` in this configuration. It would be nice to remove warnings by adding `!defined(BOOST_NO_CXX11_RVALUE_REFERENCES)` guard. ",Bugs,closed,To Be Determined,smart_ptr,Boost Development Trunk,Problem,fixed,,