When should one add the noexcept
attribute to a function? i.e. when is the compiler not able to tell a function throws? Should everything be marked or is there a way to tell?
I'm not a fan of premature optimization, and I'm not a fan of premature attribution. I don't know of a way to "profile" the need of noexcept
the same way I profile performance when optimizing.
When evaluating where it is necessary, please comment on the most common compilers, e.g. MSVC, GCC, etc.