root/assert.h @ f9142569d92c4dad48da3405f731eab361904f96

Revision f9142569d92c4dad48da3405f731eab361904f96, 2.9 KB (checked in by Nedko Arnaudov <nedko@…>, 3 years ago)

waf: switch to 1.6.1

  • Property mode set to 100644
Line 
1/* -*- Mode: C ; c-basic-offset: 2 -*- */
2/*
3 * LADI Session Handler (ladish)
4 *
5 * Copyright (C) 2009, 2010 Nedko Arnaudov <nedko@arnaudov.name>
6 *
7 **************************************************************************
8 * This file contains assert macros
9 **************************************************************************
10 *
11 * LADI Session Handler is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * LADI Session Handler is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with LADI Session Handler. If not, see <http://www.gnu.org/licenses/>
23 * or write to the Free Software Foundation, Inc.,
24 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
25 */
26
27#ifndef ASSERT_H__F236CB4F_D812_4636_958C_C82FD3781EC8__INCLUDED
28#define ASSERT_H__F236CB4F_D812_4636_958C_C82FD3781EC8__INCLUDED
29
30#include "log.h"
31
32#include </usr/include/assert.h>
33
34#define ASSERT(expr)                                                  \
35  do                                                                  \
36  {                                                                   \
37    if (!(expr))                                                      \
38    {                                                                 \
39      log_error("ASSERT(" #expr ") failed. function %s in %s:%4u\n",  \
40                __FUNCTION__,                                         \
41                __FILE__,                                             \
42                __LINE__);                                            \
43      assert(false);                                                  \
44    }                                                                 \
45  }                                                                   \
46  while(false)
47
48#define ASSERT_NO_PASS                                                \
49  do                                                                  \
50  {                                                                   \
51    log_error("Code execution taboo point. function %s in %s:%4u\n",  \
52              __FUNCTION__,                                           \
53              __FILE__,                                               \
54              __LINE__);                                              \
55    assert(false);                                                    \
56  }                                                                   \
57  while(false)
58
59#endif /* #ifndef ASSERT_H__F236CB4F_D812_4636_958C_C82FD3781EC8__INCLUDED */
Note: See TracBrowser for help on using the browser.