#pragma once
-#ifdef _WIN32
-# include <malloc.h>
+#ifdef NDEBUG
+# define assert_msg(__expr, __mesg) (void)(__expr); (void)(__mesg);
+# define assert_vmsg(__expr, __mesg, ...) (void)(__expr); (void)(__mesg);
#else
-# include <alloca.h>
-#endif
-#include <cstdarg>
+# ifdef _WIN32
+# include <malloc.h>
+# else
+# include <alloca.h>
+# endif
-#ifdef NDEBUG
-#define assert_msg(__expr, __mesg) (void)(__expr); (void)(__mesg);
-#define assert_vmsg(__expr, __mesg, ...) (void)(__expr); (void)(__mesg);
-#else
+# include <cstdarg>
+# include <libmemcached/backtrace.hpp>
-#define assert_msg(__expr, __mesg) \
+# define assert_msg(__expr, __mesg) \
do \
{ \
if (not (__expr)) \
} \
} while (0)
-#define assert_vmsg(__expr, __mesg, ...) \
+# define assert_vmsg(__expr, __mesg, ...) \
do \
{ \
if (not (__expr)) \
} \
} while (0)
-#endif
+#endif // NDEBUG