ReactOS 0.4.16-dev-2104-gb84fa49
assert.h
Go to the documentation of this file.
1/*
2 * Assert support
3 *
4 * Copyright 2011 Alexandre Julliard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#include <corecrt.h>
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27#undef assert
28#ifdef NDEBUG
29#define assert(_expr) ((void)0)
30#else
31_ACRTIMP DECLSPEC_NORETURN void __cdecl _assert(const char *, const char *, unsigned int);
32#define assert(_expr) (void)((!!(_expr)) || (_assert(#_expr, __FILE__, __LINE__), 0))
33#endif
34
35#ifdef __cplusplus
36}
37#endif
_ACRTIMP DECLSPEC_NORETURN void __cdecl _assert(const char *, const char *, unsigned int)
Definition: exit.c:314
#define __cdecl
Definition: corecrt.h:121
#define _ACRTIMP
Definition: corecrt.h:153
#define DECLSPEC_NORETURN
Definition: corecrt.h:131