SimGrid  3.10
Versatile Simulation of Distributed Systems
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Assert macro familly

Those are the SimGrid version of the good ol' assert macro. More...

Macros

#define xbt_assert(...)
 The condition which failed will be displayed.
#define xbt_abort()   abort()
 Kill the program in silence.
#define xbt_die(...)
 Kill the program with an error message.

Detailed Description

Those are the SimGrid version of the good ol' assert macro.

You can pass them a format message and arguments, just as if it where a printf. It is converted to a XBT_CRITICAL logging request. Be careful: the boolean expression that you want to test should not have side effects, because assertions are disabled at compile time if NDEBUG is set.

Macro Definition Documentation

#define xbt_die (   ...)
Value:
do { \
XBT_LOG_EXTERNAL_CATEGORY(xbt); \
XBT_CCRITICAL(xbt, __VA_ARGS__); \
xbt_abort(); \
} while (0)

Kill the program with an error message.

Parameters
...a format string and its arguments

Things are so messed up that the only thing to do now, is to stop the program.

The message is handled by a CRITICAL logging request, and may consist of a format string with arguments.