X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/48fad5a15b6e4cc86615df30490db71b448c54de..2163b0818b610b8d47f165c05b9400a714044231:/src/xbt/asserts.c diff --git a/src/xbt/asserts.c b/src/xbt/asserts.c new file mode 100644 index 0000000000..f312dda3b7 --- /dev/null +++ b/src/xbt/asserts.c @@ -0,0 +1,34 @@ +/* $Id$ */ +/* xbt/asserts.h -- assertion mecanism */ + +/* Copyright (c) 2004,2005 Martin Quinson. All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +#include /* abort */ +#include "xbt/log.h" +#include "xbt/asserts.h" + +XBT_LOG_EXTERNAL_CATEGORY(xbt); +XBT_LOG_DEFAULT_CATEGORY(xbt); + +/** + * @brief Kill the program with an error message + * \param msg + * + * 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 + * + * If you want to pass arguments to the format, you can always write xbt_assert1(0,"fmt",args) + */ +void xbt_die (const char *msg) { + CRITICAL1("%s",msg); + xbt_abort(); +} + +/** @brief Kill the program in silence */ +void xbt_abort(void) { + abort(); +}