1 /*
2 * vim: ts=4 sw=4 et tw=0 wm=0
3 *
4 * libavoid - Fast, Incremental, Object-avoiding Line Router
5 *
6 * Copyright (C) 2009 Monash University
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 * See the file LICENSE.LGPL distributed with the library.
13 *
14 * Licensees holding a valid commercial license may use this file in
15 * accordance with the commercial license agreement provided with the
16 * library.
17 *
18 * This library is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 *
22 * Author(s): Michael Wybrow <mjwybrow@users.sourceforge.net>
23 */
25 #ifndef AVOID_ASSERTIONS_H
26 #define AVOID_ASSERTIONS_H
28 #ifdef NDEBUG
30 #define COLA_ASSERT(expr) static_cast<void>(0)
32 #else // Not NDEBUG
34 #if defined(USE_ASSERT_EXCEPTIONS)
36 #include "libvpsc/assertions.h"
38 #else
40 #include <cassert>
41 #define COLA_ASSERT(expr) assert(expr)
43 #endif
45 #endif
48 #endif // AVOID_ASSERTIONS_H