X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6511b78ff810ead55a110d42b01a08255a55b56d..1bbfe6dff09cff639aaab8fd2898678a5a630c2b:/include/error.h diff --git a/include/error.h b/include/error.h index 58c89adf37..49b91bcc95 100644 --- a/include/error.h +++ b/include/error.h @@ -52,11 +52,19 @@ typedef enum { /*@observer@*/ const char *gras_error_name(gras_error_t errcode); -#define TRY(a) if ((errcode=a) != no_error) return errcode +#define TRY(a) do { \ + if ((errcode=a) != no_error) { \ + fprintf (stderr, "%s:%d: '%s' error raising...\n", \ + __FILE__,__LINE__, \ + gras_error_name(errcode)); \ + return errcode; \ + } } while (0) + #define TRYCATCH(a,b) if ((errcode=a) != no_error && errcode !=b) return errcode #define TRYFAIL(a) do { \ if ((errcode=a) != no_error) { \ - fprintf(stderr,"Got '%s' error !\n", \ + fprintf(stderr,"%s:%d: Got '%s' error !\n", \ + __FILE__,__LINE__, \ gras_error_name(errcode)); \ fflush(stdout); \ abort(); \