That's interesting. When we consulted the documentation, I interpreted /EHc as applying "nounwind" to every function or "throw()". Those are different from noexcept in that they don't interact with the type system (as you've discovered) and they don't emit runtime checks that cause the program to exit if this assumption is violated.
On Sat, Mar 31, 2018 at 3:54 PM Tiago Macarios via cfe-dev <[hidden email]> wrote:
The code below compiles fine with cl, but fails with clang-cl. Do I need to add extra flags so that -EHsc treats extern C functions as noexcept? Or am I missing something?