klao@489: #include klao@489: ladanyi@542: #include klao@489: klao@489: using namespace hugo; klao@489: using std::cout; klao@489: using std::endl; klao@489: klao@489: void faulty_fn() { klao@489: fault("This is a fault message"); klao@489: } klao@489: klao@489: void exception_fn() { klao@489: throw Exception("This is a fn throwing excpt with some args: ") klao@489: << 5 << ", " << 18; klao@489: } klao@489: klao@489: void unfinished_fn() { klao@489: FIXME("unfinished_fn() is unfinished!"); klao@489: } klao@489: klao@489: klao@489: int main() { klao@489: bool no_errors = false; klao@489: klao@489: try { klao@489: cout << "Trying a faulty function\n"; klao@489: faulty_fn(); klao@489: no_errors = true; klao@489: cout << "FAILED!\n"; klao@489: } klao@489: catch(const Exception &e) { klao@489: cout << "E: " << e.what() << endl; klao@489: } klao@489: klao@489: try { klao@489: cout << "Trying a function throwing Exception\n"; klao@489: exception_fn(); klao@489: no_errors = true; klao@489: cout << "FAILED!\n"; klao@489: } klao@489: catch(const Exception &e) { klao@489: cout << "E: " << e.what() << endl; klao@489: } klao@489: klao@489: try { klao@489: cout << "Trying a function using FIXME\n"; klao@489: unfinished_fn(); klao@489: no_errors = true; klao@489: cout << "FAILED!\n"; klao@489: } klao@489: catch(const Exception &e) { klao@489: cout << "E: " << e.what() << endl; klao@489: } klao@489: klao@489: return no_errors ? 1 : 0; klao@489: }