Hacker News new | ask | show | jobs
by dataflow 682 days ago
extern "C" seems related to the other flags, not 'r'?
1 comments

Well, 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.