3 ms·
extern "C" seems related to the other flags, not 'r'?
by dataflow 2y ago
extern "C" seems related to the other flags, not 'r'?
- terrymah 2y agoWell, yeah, things can be related to many things, but throwing extern "C"s was one of the motivations as I recall for 'r'. r is about a compiler optimization where we elide the runtime terminate check if we can statically "prove" a function can never throw. To prove it statically we depend on things like extern "C" functions not throwing, even though users can (and do) totally write that code.