30 #include "kmp_i18n_id.inc" 47 void __kmp_i18n_catopen();
48 void __kmp_i18n_catclose();
49 char const * __kmp_i18n_catgets( kmp_i18n_id_t
id );
51 #define KMP_I18N_STR( id ) __kmp_i18n_catgets( kmp_i18n_str_ ## id ) 114 typedef enum kmp_msg_type kmp_msg_type_t;
122 typedef struct kmp_msg kmp_msg_t;
125 extern kmp_msg_t __kmp_msg_empty;
126 extern kmp_msg_t __kmp_msg_null;
131 kmp_msg_t __kmp_msg_format( kmp_i18n_id_t
id, ... );
132 kmp_msg_t __kmp_msg_error_code(
int code );
133 kmp_msg_t __kmp_msg_error_mesg(
char const * mesg );
136 #define KMP_MSG( ... ) __kmp_msg_format( kmp_i18n_msg_ ## __VA_ARGS__ ) 137 #define KMP_HNT( ... ) __kmp_msg_format( kmp_i18n_hnt_ ## __VA_ARGS__ ) 138 #define KMP_SYSERRCODE( code ) __kmp_msg_error_code( code ) 139 #define KMP_SYSERRMESG( mesg ) __kmp_msg_error_mesg( mesg ) 140 #define KMP_ERR KMP_SYSERRCODE 143 enum kmp_msg_severity {
148 typedef enum kmp_msg_severity kmp_msg_severity_t;
152 void __kmp_msg( kmp_msg_severity_t severity, kmp_msg_t message, ... );
155 #define KMP_INFORM( ... ) __kmp_msg( kmp_ms_inform, KMP_MSG( __VA_ARGS__ ), __kmp_msg_null ) 156 #define KMP_WARNING( ... ) __kmp_msg( kmp_ms_warning, KMP_MSG( __VA_ARGS__ ), __kmp_msg_null ) 157 #define KMP_FATAL( ... ) __kmp_msg( kmp_ms_fatal, KMP_MSG( __VA_ARGS__ ), __kmp_msg_null ) 158 #define KMP_SYSFAIL( func, error ) \ 161 KMP_MSG( FunctionError, func ), \ 162 KMP_SYSERRCODE( error ), \ 167 #define KMP_CHECK_SYSFAIL( func, error ) \ 170 KMP_SYSFAIL( func, error ); \ 175 #define KMP_CHECK_SYSFAIL_ERRNO( func, status ) \ 177 if ( status != 0 ) { \ 179 KMP_SYSFAIL( func, error ); \ 184 void __kmp_i18n_dump_catalog( kmp_str_buf_t * buffer );
189 #endif // __cplusplus