summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2021-02-02 14:41:23 -0800
committerChristian Hergert <chergert@redhat.com>2021-02-08 11:29:32 -0800
commit226dc496024ef46e6cb5562ee61b11ea0fd3d954 (patch)
tree307360174270072db7cf62184e509f22834fcd69
parent207569c4ed33ee6da751e6e1d4eeb162febafb55 (diff)
downloadgtk+-226dc496024ef46e6cb5562ee61b11ea0fd3d954.tar.gz
profiler: allow using gdk profiler functions without braces
Just compiling these out means you have to write code slightly differently so that you don't end up with "if ();" afterwards. This adds a "do {} while (0)" so that we're still semantically a statement but will also compile out.
-rw-r--r--gdk/gdkprofilerprivate.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/gdk/gdkprofilerprivate.h b/gdk/gdkprofilerprivate.h
index bd04850d9d..897f4f804e 100644
--- a/gdk/gdkprofilerprivate.h
+++ b/gdk/gdkprofilerprivate.h
@@ -73,23 +73,23 @@ void gdk_profiler_set_int_counter (guint id,
gint64 value);
#ifndef HAVE_SYSPROF
-#define gdk_profiler_add_mark(b, d, n, m)
-#define gdk_profiler_end_mark(b, n, m)
+#define gdk_profiler_add_mark(b, d, n, m) G_STMT_START {} G_STMT_END
+#define gdk_profiler_end_mark(b, n, m) G_STMT_START {} G_STMT_END
/* Optimise the whole call out */
#if defined(G_HAVE_ISO_VARARGS)
-#define gdk_profiler_add_markf(b, d, n, m, ...)
-#define gdk_profiler_end_markf(b, n, m, ...)
+#define gdk_profiler_add_markf(b, d, n, m, ...) G_STMT_START {} G_STMT_END
+#define gdk_profiler_end_markf(b, n, m, ...) G_STMT_START {} G_STMT_END
#elif defined(G_HAVE_GNUC_VARARGS)
-#define gdk_profiler_add_markf(b, d, n, m...)
-#define gdk_profiler_end_markf(b, n, m...)
+#define gdk_profiler_add_markf(b, d, n, m...) G_STMT_START {} G_STMT_END
+#define gdk_profiler_end_markf(b, n, m...) G_STMT_START {} G_STMT_END
#else
/* no varargs macro support; the call will have to be optimised out by the compiler */
#endif
#define gdk_profiler_define_counter(n, d) 0
#define gdk_profiler_define_int_counter(n, d) 0
-#define gdk_profiler_set_counter(i, v)
-#define gdk_profiler_set_int_counter(i, v)
+#define gdk_profiler_set_counter(i, v) G_STMT_START {} G_STMT_END
+#define gdk_profiler_set_int_counter(i, v) G_STMT_START {} G_STMT_END
#endif
G_END_DECLS