Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Let it compile even in NDEBUG (xbt_assert is then defined to nothing, and gcc complai...
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 6 Dec 2005 23:39:29 +0000 (23:39 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 6 Dec 2005 23:39:29 +0000 (23:39 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1876 48e7efb5-ca39-0410-a469-dd3cf9ba447f

include/xbt/ex.h

index ad19546..9a457b9 100644 (file)
@@ -408,9 +408,14 @@ extern void __xbt_ex_terminate_default(xbt_ex_t *e);
 #define THROW6(c,v,m,a1,a2,a3,a4,a5,a6) _THROW(c,v,bprintf(m,a1,a2,a3,a4,a5,a6))
 
 #define THROW_IMPOSSIBLE     THROW0(unknown_error,0,"The Impossible Did Happen (yet again)")
-#define DIE_IMPOSSIBLE       xbt_assert0(0,"The Impossible Did Happen (yet again)")
 #define THROW_UNIMPLEMENTED  THROW1(unknown_error,0,"Function %s unimplemented",__FUNCTION__)
 
+#ifndef NDEBUG
+#  define DIE_IMPOSSIBLE       xbt_assert0(0,"The Impossible Did Happen (yet again)")
+#else
+#  define DIE_IMPOSSIBLE       exit(1);
+#endif
+
 /** @brief re-throwing of an already caught exception (ie, pass it to the upper catch block) 
  *  @hideinitializer
  */