Macro library for exception handling in C