mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-03-15 04:05:11 +01:00
glib/gmessages.h: Unify log messages
...Under various compilers when !G_DISABLE_CHECKS. Previously, the messages that are logged differ depending whether GLib was built with GCC or not. To simplify test cases, make all builds use a single output format for g_return_if_fail(), g_return_val_if_fail(), g_return_if_reached(), and g_return_val_if_reached(), by using the GCC-style format and replaceing __PRETTY_FUNCTION__ with G_STRFUNC, so that it will work across various compilers. https://bugzilla.gnome.org/show_bug.cgi?id=711047
This commit is contained in:
parent
fff14a5b7c
commit
172aaa3a01
@ -334,13 +334,11 @@ GPrintFunc g_set_printerr_handler (GPrintFunc func);
|
|||||||
|
|
||||||
#else /* !G_DISABLE_CHECKS */
|
#else /* !G_DISABLE_CHECKS */
|
||||||
|
|
||||||
#ifdef __GNUC__
|
|
||||||
|
|
||||||
#define g_return_if_fail(expr) G_STMT_START{ \
|
#define g_return_if_fail(expr) G_STMT_START{ \
|
||||||
if G_LIKELY(expr) { } else \
|
if G_LIKELY(expr) { } else \
|
||||||
{ \
|
{ \
|
||||||
g_return_if_fail_warning (G_LOG_DOMAIN, \
|
g_return_if_fail_warning (G_LOG_DOMAIN, \
|
||||||
__PRETTY_FUNCTION__, \
|
G_STRFUNC, \
|
||||||
#expr); \
|
#expr); \
|
||||||
return; \
|
return; \
|
||||||
}; }G_STMT_END
|
}; }G_STMT_END
|
||||||
@ -349,7 +347,7 @@ GPrintFunc g_set_printerr_handler (GPrintFunc func);
|
|||||||
if G_LIKELY(expr) { } else \
|
if G_LIKELY(expr) { } else \
|
||||||
{ \
|
{ \
|
||||||
g_return_if_fail_warning (G_LOG_DOMAIN, \
|
g_return_if_fail_warning (G_LOG_DOMAIN, \
|
||||||
__PRETTY_FUNCTION__, \
|
G_STRFUNC, \
|
||||||
#expr); \
|
#expr); \
|
||||||
return (val); \
|
return (val); \
|
||||||
}; }G_STMT_END
|
}; }G_STMT_END
|
||||||
@ -360,7 +358,7 @@ GPrintFunc g_set_printerr_handler (GPrintFunc func);
|
|||||||
"file %s: line %d (%s): should not be reached", \
|
"file %s: line %d (%s): should not be reached", \
|
||||||
__FILE__, \
|
__FILE__, \
|
||||||
__LINE__, \
|
__LINE__, \
|
||||||
__PRETTY_FUNCTION__); \
|
G_STRFUNC); \
|
||||||
return; }G_STMT_END
|
return; }G_STMT_END
|
||||||
|
|
||||||
#define g_return_val_if_reached(val) G_STMT_START{ \
|
#define g_return_val_if_reached(val) G_STMT_START{ \
|
||||||
@ -369,53 +367,9 @@ GPrintFunc g_set_printerr_handler (GPrintFunc func);
|
|||||||
"file %s: line %d (%s): should not be reached", \
|
"file %s: line %d (%s): should not be reached", \
|
||||||
__FILE__, \
|
__FILE__, \
|
||||||
__LINE__, \
|
__LINE__, \
|
||||||
__PRETTY_FUNCTION__); \
|
G_STRFUNC); \
|
||||||
return (val); }G_STMT_END
|
return (val); }G_STMT_END
|
||||||
|
|
||||||
#else /* !__GNUC__ */
|
|
||||||
|
|
||||||
#define g_return_if_fail(expr) G_STMT_START{ \
|
|
||||||
if (expr) { } else \
|
|
||||||
{ \
|
|
||||||
g_log (G_LOG_DOMAIN, \
|
|
||||||
G_LOG_LEVEL_CRITICAL, \
|
|
||||||
"file %s: line %d: assertion '%s' failed", \
|
|
||||||
__FILE__, \
|
|
||||||
__LINE__, \
|
|
||||||
#expr); \
|
|
||||||
return; \
|
|
||||||
}; }G_STMT_END
|
|
||||||
|
|
||||||
#define g_return_val_if_fail(expr, val) G_STMT_START{ \
|
|
||||||
if (expr) { } else \
|
|
||||||
{ \
|
|
||||||
g_log (G_LOG_DOMAIN, \
|
|
||||||
G_LOG_LEVEL_CRITICAL, \
|
|
||||||
"file %s: line %d: assertion '%s' failed", \
|
|
||||||
__FILE__, \
|
|
||||||
__LINE__, \
|
|
||||||
#expr); \
|
|
||||||
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: should not be reached", \
|
|
||||||
__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 */
|
#endif /* !G_DISABLE_CHECKS */
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
Loading…
x
Reference in New Issue
Block a user