Chris@16
|
1 #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED
|
Chris@16
|
2 #define BOOST_CURRENT_FUNCTION_HPP_INCLUDED
|
Chris@16
|
3
|
Chris@16
|
4 // MS compatible compilers support #pragma once
|
Chris@16
|
5
|
Chris@16
|
6 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
Chris@16
|
7 # pragma once
|
Chris@16
|
8 #endif
|
Chris@16
|
9
|
Chris@16
|
10 //
|
Chris@16
|
11 // boost/current_function.hpp - BOOST_CURRENT_FUNCTION
|
Chris@16
|
12 //
|
Chris@16
|
13 // Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
|
Chris@16
|
14 //
|
Chris@101
|
15 // Distributed under the Boost Software License, Version 1.0.
|
Chris@101
|
16 // See accompanying file LICENSE_1_0.txt or copy at
|
Chris@101
|
17 // http://www.boost.org/LICENSE_1_0.txt
|
Chris@16
|
18 //
|
Chris@101
|
19 // http://www.boost.org/libs/assert/current_function.html
|
Chris@16
|
20 //
|
Chris@16
|
21
|
Chris@16
|
22 namespace boost
|
Chris@16
|
23 {
|
Chris@16
|
24
|
Chris@16
|
25 namespace detail
|
Chris@16
|
26 {
|
Chris@16
|
27
|
Chris@16
|
28 inline void current_function_helper()
|
Chris@16
|
29 {
|
Chris@16
|
30
|
Chris@16
|
31 #if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__)
|
Chris@16
|
32
|
Chris@16
|
33 # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__
|
Chris@16
|
34
|
Chris@16
|
35 #elif defined(__DMC__) && (__DMC__ >= 0x810)
|
Chris@16
|
36
|
Chris@16
|
37 # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__
|
Chris@16
|
38
|
Chris@16
|
39 #elif defined(__FUNCSIG__)
|
Chris@16
|
40
|
Chris@16
|
41 # define BOOST_CURRENT_FUNCTION __FUNCSIG__
|
Chris@16
|
42
|
Chris@16
|
43 #elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500))
|
Chris@16
|
44
|
Chris@16
|
45 # define BOOST_CURRENT_FUNCTION __FUNCTION__
|
Chris@16
|
46
|
Chris@16
|
47 #elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
|
Chris@16
|
48
|
Chris@16
|
49 # define BOOST_CURRENT_FUNCTION __FUNC__
|
Chris@16
|
50
|
Chris@16
|
51 #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901)
|
Chris@16
|
52
|
Chris@16
|
53 # define BOOST_CURRENT_FUNCTION __func__
|
Chris@16
|
54
|
Chris@101
|
55 #elif defined(__cplusplus) && (__cplusplus >= 201103)
|
Chris@101
|
56
|
Chris@101
|
57 # define BOOST_CURRENT_FUNCTION __func__
|
Chris@101
|
58
|
Chris@16
|
59 #else
|
Chris@16
|
60
|
Chris@16
|
61 # define BOOST_CURRENT_FUNCTION "(unknown)"
|
Chris@16
|
62
|
Chris@16
|
63 #endif
|
Chris@16
|
64
|
Chris@16
|
65 }
|
Chris@16
|
66
|
Chris@16
|
67 } // namespace detail
|
Chris@16
|
68
|
Chris@16
|
69 } // namespace boost
|
Chris@16
|
70
|
Chris@16
|
71 #endif // #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED
|