From 241522378f233141f24a2303a07c0962b42c63dc Mon Sep 17 00:00:00 2001 From: koldo Date: Sun, 5 Jun 2016 07:16:38 +0000 Subject: [PATCH] ArrayFire_demo: Better error catching git-svn-id: svn://ultimatepp.org/upp/trunk@9900 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- bazaar/ArrayFire_demo/ArrayFire_demo.cpp | 26 +++++++++++++++--------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/bazaar/ArrayFire_demo/ArrayFire_demo.cpp b/bazaar/ArrayFire_demo/ArrayFire_demo.cpp index 8a68819d6..5e339ee8b 100644 --- a/bazaar/ArrayFire_demo/ArrayFire_demo.cpp +++ b/bazaar/ArrayFire_demo/ArrayFire_demo.cpp @@ -14,6 +14,8 @@ void Demo(); CONSOLE_APP_MAIN { try { + Cout() << "\nArrayFire library demo\n\n"; + int device = 0; setDevice(device); info(); @@ -23,14 +25,18 @@ CONSOLE_APP_MAIN MatMult_Bench(); Vectorize_Bench(); } catch (af::exception& e) { - printf("\nError: %s\n", e.what()); - } catch (...) { - printf("\nUnknown error\n"); - } - printf("\nEnd"); - #ifdef WIN32 // pause in Windows - printf(". Hit enter..."); - fflush(stdout); - getchar(); - #endif + Cout() << t_("Internal error:") + String(" ") + e.what() + String("\n") + t_("Program ended"); + } catch (Exc e) { + Cout() << t_("Internal error:") + String(" ") + e + String("\n") + t_("Program ended"); + } catch(const char *cad) { + Cout() << t_("Internal error:") + String(" ") + cad + String("\n") + t_("Program ended"); + } catch(const std::string &e) { + Cout() << t_("Internal error:") + String(" ") + e.c_str() + String("\n") + t_("Program ended"); + } catch (const std::exception &e) { + Cout() << t_("Internal error:") + String(" ") + e.what() + String("\n") + t_("Program ended"); + } catch(...) { + Cout() << t_("Internal error:") + String(" ") + t_("Unknown error") + String("\n") + t_("Program ended"); + } + Cout() << "\nEnd"; + ReadStdIn(); } \ No newline at end of file