id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 7523,Patch that adds missing BOOST_NOEXCEPT to noexcept functions,Antony Polukhin,Peter Dimov,"This is a trivial patch, that marks function with BOOST_NOEXCEPT if: * function is commented as ""// newer throws"" and has no BOOST_ASSERT and has no user specified template class destructor call * or function is extremely simple (consist of a few lines of code that are guaranteed not to throw) * or function has only a call to noexcept function (like `swap(shared_ptr& v1, shared_ptr& v2) { v1.swap(v2);}` ) Applying this patch will dramatically increase performance of smart pointers on modern compilers (because of [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3050.html N3050], STL containers can not move smart pointers if move assignment and move constructors are not marked with noexcept). It will also reduce the size of compiled code. Patch is tested on GCC-4.6 (with and without -std=c++0x flag) and MSVC2012",Patches,closed,To Be Determined,smart_ptr,Boost Development Trunk,Optimization,fixed,,antoshkka@…