22 Jan
2018
22 Jan
'18
6:57 p.m.
No, no. This happens not inside STL, but inside `result`: https://github.com/ned14/boost-outcome/blob/master/include/boost/outcome/det... Inside the implementation of function `value_storage_nontrivial::swap` you are using move construction in certain cases. And this move constructor of `T` can potentially throw and may be declared `noexcept(false)`, but you will not see it if you are only querying for noexcept swap on `T`.
Oh I see what you mean now. The over tight noexcept spec is a clear bug. Logged to https://github.com/ned14/outcome/issues/109 Thanks for the report. Niall -- ned Productions Limited Consulting http://www.nedproductions.biz/ http://ie.linkedin.com/in/nialldouglas/