id summary reporter owner description type status milestone component version severity resolution keywords cc 11927 optional_test_swap.cpp: In C++11 mode, std::swap should have a noexcept specification Aparna Kumta Fernando Cacciola "Compiling libs/optional/test/optional_test_swap.cpp with Oracle Solaris Studio 12.5 in C++11 mode, we see the following error: ""../libs/optional/test/optional_test_swap.cpp"", line 239: Error: The prior declaration for std::swap(optional_swap_test::class_whose_default_ctor_should_not_be_used&, optional_swap_test::class_whose_default_ctor_should_not_be_used&) has an exception specification. ""../libs/optional/test/optional_test_swap.cpp"", line 245: Error: The prior declaration for std::swap(optional_swap_test::class_without_default_ctor&, optional_swap_test::class_without_default_ctor&) has an exception specification. 2 Error(s) detected. See: http://www.boost.org/development/tests/develop/developer/output/oracle-intel-S2-12-5-cpp11-boost-bin-v2-libs-optional-test-optional_test_swap-test-sun-12-5_cpp11-release-threading-multi.html In C++03, the std::swap template does not have an exception specification. In C++11, it has a noexcept specification. This seems to be a violation of the standard. 15.4[except.spec]p5: ===== If any declaration of a function has an exception-specification that is not a noexcept-specification allowing all exceptions, all declarations, including the definition and any explicit specialization, of that function shall have a compatible exception-specification. " Bugs new To Be Determined optional Boost Development Trunk Problem