What is the point of using macros to create custom exceptions?