williamr@2: #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED williamr@2: #define BOOST_CURRENT_FUNCTION_HPP_INCLUDED williamr@2: williamr@2: // MS compatible compilers support #pragma once williamr@2: williamr@2: #if defined(_MSC_VER) && (_MSC_VER >= 1020) williamr@2: # pragma once williamr@2: #endif williamr@2: williamr@2: // williamr@2: // boost/current_function.hpp - BOOST_CURRENT_FUNCTION williamr@2: // williamr@2: // Copyright (c) 2002 Peter Dimov and Multi Media Ltd. williamr@2: // williamr@2: // Distributed under the Boost Software License, Version 1.0. (See williamr@2: // accompanying file LICENSE_1_0.txt or copy at williamr@2: // http://www.boost.org/LICENSE_1_0.txt) williamr@2: // williamr@2: // http://www.boost.org/libs/utility/current_function.html williamr@2: // williamr@2: williamr@2: namespace boost williamr@2: { williamr@2: williamr@2: namespace detail williamr@2: { williamr@2: williamr@2: inline void current_function_helper() williamr@2: { williamr@2: williamr@2: #if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__ williamr@2: williamr@2: #elif defined(__FUNCSIG__) williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION __FUNCSIG__ williamr@2: williamr@2: #elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500)) williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION __FUNCTION__ williamr@2: williamr@2: #elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x550) williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION __FUNC__ williamr@2: williamr@2: #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901) williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION __func__ williamr@2: williamr@2: #else williamr@2: williamr@2: # define BOOST_CURRENT_FUNCTION "(unknown)" williamr@2: williamr@2: #endif williamr@2: williamr@2: } williamr@2: williamr@2: } // namespace detail williamr@2: williamr@2: } // namespace boost williamr@2: williamr@2: #endif // #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED