diff options
author | Tim Janik <timj@gtk.org> | 2000-07-25 22:48:09 +0000 |
---|---|---|
committer | Tim Janik <timj@src.gnome.org> | 2000-07-25 22:48:09 +0000 |
commit | 623efc182c9c3a001aa4e4634c48840d8124aa82 (patch) | |
tree | 806fc9d069bcd2db83ef32c21c5835a121859f05 /glib | |
parent | 18ac8965f8c3f59d98da8c67cb37d8f655fbd3f1 (diff) | |
download | glib-623efc182c9c3a001aa4e4634c48840d8124aa82.tar.gz |
applied patch from Darin Adler <darin@eazel.com> which supplies
Wed Jul 26 00:46:03 2000 Tim Janik <timj@gtk.org>
* glib.h: applied patch from Darin Adler <darin@eazel.com> which
supplies g_return_if_reached(), g_return_val_if_reached() and
g_critical().
Diffstat (limited to 'glib')
-rw-r--r-- | glib/glib.h | 60 |
1 files changed, 54 insertions, 6 deletions
diff --git a/glib/glib.h b/glib/glib.h index fdfb68773..1420ed6db 100644 --- a/glib/glib.h +++ b/glib/glib.h @@ -426,6 +426,8 @@ extern "C" { #define g_return_if_fail(expr) #define g_return_val_if_fail(expr,val) +#define g_return_if_reached() return +#define g_return_val_if_reached(val) return (val) #else /* !G_DISABLE_CHECKS */ @@ -436,7 +438,7 @@ extern "C" { { \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ - "file %s: line %d (%s): assertion `%s' failed.", \ + "file %s: line %d (%s): assertion `%s' failed", \ __FILE__, \ __LINE__, \ __PRETTY_FUNCTION__, \ @@ -449,14 +451,32 @@ extern "C" { { \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ - "file %s: line %d (%s): assertion `%s' failed.", \ + "file %s: line %d (%s): assertion `%s' failed", \ __FILE__, \ __LINE__, \ __PRETTY_FUNCTION__, \ #expr); \ - return val; \ + return (val); \ }; }G_STMT_END +#define g_return_if_reached() G_STMT_START{ \ + g_log (G_LOG_DOMAIN, \ + G_LOG_LEVEL_CRITICAL, \ + "file %s: line %d (%s): assertion `%s' failed", \ + __FILE__, \ + __LINE__, \ + __PRETTY_FUNCTION__); \ + return; }G_STMT_END + +#define g_return_val_if_reached(val) G_STMT_START{ \ + g_log (G_LOG_DOMAIN, \ + G_LOG_LEVEL_CRITICAL, \ + "file %s: line %d (%s): should not be reached", \ + __FILE__, \ + __LINE__, \ + __PRETTY_FUNCTION__); \ + return (val); }G_STMT_END + #else /* !__GNUC__ */ #define g_return_if_fail(expr) G_STMT_START{ \ @@ -464,7 +484,7 @@ extern "C" { { \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ - "file %s: line %d: assertion `%s' failed.", \ + "file %s: line %d: assertion `%s' failed", \ __FILE__, \ __LINE__, \ #expr); \ @@ -476,13 +496,29 @@ extern "C" { { \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ - "file %s: line %d: assertion `%s' failed.", \ + "file %s: line %d: assertion `%s' failed", \ __FILE__, \ __LINE__, \ #expr); \ - return val; \ + return (val); \ }; }G_STMT_END +#define g_return_if_reached() G_STMT_START{ \ + g_log (G_LOG_DOMAIN, \ + G_LOG_LEVEL_CRITICAL, \ + "file %s: line %d: assertion `%s' failed", \ + __FILE__, \ + __LINE__); \ + return; }G_STMT_END + +#define g_return_val_if_reached(val) G_STMT_START{ \ + g_log (G_LOG_DOMAIN, \ + G_LOG_LEVEL_CRITICAL, \ + "file %s: line %d: should not be reached", \ + __FILE__, \ + __LINE__); \ + return (val); }G_STMT_END + #endif /* !__GNUC__ */ #endif /* !G_DISABLE_CHECKS */ @@ -1442,6 +1478,9 @@ GLogLevelFlags g_log_set_always_fatal (GLogLevelFlags fatal_mask); #define g_message(format, args...) g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_MESSAGE, \ format, ##args) +#define g_critical(format, args...) g_log (G_LOG_DOMAIN, \ + G_LOG_LEVEL_CRITICAL, \ + format, ##args) #define g_warning(format, args...) g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_WARNING, \ format, ##args) @@ -1465,6 +1504,15 @@ g_message (const gchar *format, va_end (args); } static void +g_critical (const gchar *format, + ...) +{ + va_list args; + va_start (args, format); + g_logv (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL, format, args); + va_end (args); +} +static void g_warning (const gchar *format, ...) { |