Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Assertions Are Pessimistic, Assumptions Are Optimistic (2014) (regehr.org)
12 points by rdc12 on July 4, 2015 | hide | past | favorite | 4 comments


I looked at doing this in 2010 for the firefox codebase. At the time, neither gcc nor clang were able to infer enough information from builtin_unreachable or asserts in non-debug mode to be worth the effort.

Also, many asserts are rewritten to provide debugging information, not just crashing the program. Firefox had a bunch of asserts that sent logged information before they died, for example. As a result, you're usually willing to take the performance hit to find out why your program failed, esp when the hit is small (here it's shown to be <10%).



This is fascinating, I didn't realize that compilers even could do so much with one simple primitive!


What a weird typing / prolog-cut mechanism.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: