epoc32/include/stdapis/boost/assert.hpp
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@4
     1
//
williamr@4
     2
//  boost/assert.hpp - BOOST_ASSERT(expr)
williamr@4
     3
//
williamr@4
     4
//  Copyright (c) 2001, 2002 Peter Dimov and Multi Media Ltd.
williamr@4
     5
//
williamr@4
     6
// Distributed under the Boost Software License, Version 1.0. (See
williamr@4
     7
// accompanying file LICENSE_1_0.txt or copy at
williamr@4
     8
// http://www.boost.org/LICENSE_1_0.txt)
williamr@4
     9
//
williamr@4
    10
//  Note: There are no include guards. This is intentional.
williamr@4
    11
//
williamr@4
    12
//  See http://www.boost.org/libs/utility/assert.html for documentation.
williamr@4
    13
//
williamr@4
    14
williamr@4
    15
#undef BOOST_ASSERT
williamr@4
    16
williamr@4
    17
#if defined(BOOST_DISABLE_ASSERTS)
williamr@4
    18
williamr@4
    19
# define BOOST_ASSERT(expr) ((void)0)
williamr@4
    20
williamr@4
    21
#elif defined(BOOST_ENABLE_ASSERT_HANDLER)
williamr@4
    22
williamr@4
    23
#include <boost/current_function.hpp>
williamr@4
    24
williamr@4
    25
namespace boost
williamr@4
    26
{
williamr@4
    27
williamr@4
    28
void assertion_failed(char const * expr, char const * function, char const * file, long line); // user defined
williamr@4
    29
williamr@4
    30
} // namespace boost
williamr@4
    31
williamr@4
    32
#define BOOST_ASSERT(expr) ((expr)? ((void)0): ::boost::assertion_failed(#expr, BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
williamr@4
    33
williamr@4
    34
#else
williamr@4
    35
# include <assert.h> // .h to support old libraries w/o <cassert> - effect is the same
williamr@4
    36
# define BOOST_ASSERT(expr) assert(expr)
williamr@4
    37
#endif