 |
HDF5
1.12.0
|
Go to the documentation of this file.
33 #define HERROR(maj_id, min_id, ...) H5E_printf_stack(NULL, __FILE__, FUNC, __LINE__, H5E_ERR_CLS_g, maj_id, min_id, __VA_ARGS__)
39 #define HCOMMON_ERROR(maj, min, ...) \
40 HERROR(maj, min, __VA_ARGS__); \
41 err_occurred = TRUE; \
42 err_occurred = err_occurred;
53 #define HDONE_ERROR(maj, min, ret_val, ...) { \
54 HCOMMON_ERROR(maj, min, __VA_ARGS__); \
55 ret_value = ret_val; \
65 #define HGOTO_ERROR(maj, min, ret_val, ...) { \
66 HCOMMON_ERROR(maj, min, __VA_ARGS__); \
74 #define HGOTO_ERROR_TAG(maj, min, ret_val, ...) { \
75 H5AC_tag(prv_tag, NULL); \
76 HCOMMON_ERROR(maj, min, __VA_ARGS__); \
86 #define HGOTO_DONE(ret_val) {ret_value = ret_val; goto done;}
92 #define HGOTO_DONE_TAG(ret_val) { \
93 H5AC_tag(prv_tag, NULL); \
105 #define HSYS_DONE_ERROR(majorcode, minorcode, retcode, str) { \
106 int myerrno = errno; \
107 HDONE_ERROR(majorcode, minorcode, retcode, "%s, errno = %d, error message = '%s'", str, myerrno, HDstrerror(myerrno)); \
109 #define HSYS_GOTO_ERROR(majorcode, minorcode, retcode, str) { \
110 int myerrno = errno; \
111 HGOTO_ERROR(majorcode, minorcode, retcode, "%s, errno = %d, error message = '%s'", str, myerrno, HDstrerror(myerrno)); \
114 #ifdef H5_HAVE_PARALLEL
119 extern char H5E_mpi_error_str[MPI_MAX_ERROR_STRING];
120 extern int H5E_mpi_error_str_len;
122 #define HMPI_ERROR(mpierr){ \
123 MPI_Error_string(mpierr, H5E_mpi_error_str, &H5E_mpi_error_str_len); \
124 HERROR(H5E_INTERNAL, H5E_MPIERRSTR, "%s", H5E_mpi_error_str); \
126 #define HMPI_DONE_ERROR(retcode, str, mpierr){ \
127 HMPI_ERROR(mpierr); \
128 HDONE_ERROR(H5E_INTERNAL, H5E_MPI, retcode, str); \
130 #define HMPI_GOTO_ERROR(retcode, str, mpierr){ \
131 HMPI_ERROR(mpierr); \
132 HGOTO_ERROR(H5E_INTERNAL, H5E_MPI, retcode, str); \
147 #define H5E_PRINTF(...) H5E_printf_stack(NULL, __FILE__, FUNC, __LINE__, H5E_ERR_CLS_g, H5_MY_PKG_ERR, __VA_ARGS__)
156 #define H5_LEAVE(v) { \
169 #define H5E_THROW(...) { \
170 H5E_PRINTF(__VA_ARGS__); \
171 H5_LEAVE(fail_value) \
177 #define CATCH catch_except:; past_catch = TRUE;
int64_t hid_t
Definition: H5Ipublic.h:55
H5_DLL herr_t H5E_dump_api_stack(hbool_t is_api)
Definition: H5Eint.c:985
#define H5_DLL
Definition: H5api_adpt.h:234
#define H5_ATTR_FORMAT(X, Y, Z)
Definition: H5private.h:332
H5_DLL herr_t H5_DLL herr_t H5E_clear_stack(H5E_t *estack)
Definition: H5Eint.c:915
H5_DLL herr_t H5E_init(void)
Definition: H5E.c:160
int herr_t
Definition: H5public.h:128
bool hbool_t
Definition: H5public.h:159
H5_DLL herr_t H5E_printf_stack(H5E_t *estack, const char *file, const char *func, unsigned line, hid_t cls_id, hid_t maj_id, hid_t min_id, const char *fmt,...) H5_ATTR_FORMAT(printf