From: Simon Marlow Date: Mon, 20 Nov 2006 14:27:38 +0000 (+0000) Subject: better error messages when PAPI_library_init() fails X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=3d3f4dea2ac829f450bc2bb2ceed777864ba6aec better error messages when PAPI_library_init() fails --- diff --git a/rts/RtsStartup.c b/rts/RtsStartup.c index f2a0dd7..c2f765a 100644 --- a/rts/RtsStartup.c +++ b/rts/RtsStartup.c @@ -160,9 +160,18 @@ hs_init(int *argc, char **argv[]) /* Initialise the performance tracking library */ #ifdef USE_PAPI - /* Must fix to abort gracefully */ - if(PAPI_library_init(PAPI_VER_CURRENT) != PAPI_VER_CURRENT) - exit(1); + { + int ver; + if ((ver = PAPI_library_init(PAPI_VER_CURRENT)) != PAPI_VER_CURRENT) { + if (ver > 0) { + errorBelch("PAPI_library_init: wrong version: %x", ver); + stg_exit(EXIT_FAILURE); + } else { + sysErrorBelch("PAPI_library_init"); + stg_exit(EXIT_FAILURE); + } + } + } #ifdef THREADED_RTS { int err;