// Exceptions collide mid-flight. #include TRIVIAL_EXCEPTION(yin); TRIVIAL_EXCEPTION(yang); void collideFinally() { try { throw (yin){}; } finally { throw (yang){}; } } int main(int argc, char * argv[]) { try { collideFinally(); } catch (exception_t * any) { printf("Caught: %s\n", any->virtual_table->msg(any)); } }