24 lines
641 B
C
24 lines
641 B
C
/*
|
|
* <assert.h> - make assertions
|
|
*
|
|
* This header is a part of the FENIX C Library and is free software.
|
|
* You can redistribute and/or modify it subject to the terms of the
|
|
* Clumsy Wolf Public License v4. For more details, see the file COPYING.
|
|
*
|
|
* The FENIX C Library is distributed WITH NO WARRANTY WHATSOEVER. See
|
|
* The CWPL for more details.
|
|
*/
|
|
|
|
#ifndef _ASSERT_H
|
|
#define _ASSERT_H
|
|
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
|
|
#ifdef NDEBUG
|
|
#define assert(ignore) ((void) 0)
|
|
#else
|
|
#define assert(expression) (expression || (fprintf(stderr, "Assertion failed: %s: %d: %s", __FILE__, __LINE__, __func__) && abort()))
|
|
#endif
|
|
|
|
#endif
|