exceptions4c is a tiny, portable framework that brings the power of exceptions to your C applications. It provides a simple set of keywords (macros, actually) which map the semantics of exception handling you're probably already used to: try, catch, finally, throw. You can write try/catch/finally blocks just as if you were coding in Java. This way you will never have to deal again with boring error codes, or check return values every time you call a function.
Flawless traps exceptions and then uses git blame to send an email to the developer who wrote the buggy code. Even if a particular line of code causes thousands of exceptions, only one email will be sent. It uses git-blame to figure out which developer is responsible for a particular exception, and will only email that developer. If you set report_only_after_minimum_date, then Flawless will only report exceptions caused by code modified after report_only_after_minimum_date. You can mark certain files/functions as library code, and when an exception originates in those files/functions, the caller will be blamed for the error instead of the library code.