mirror of
https://github.com/bolero-MURAKAMI/Sprout
synced 2024-11-12 21:09:01 +00:00
44 lines
1.1 KiB
C++
44 lines
1.1 KiB
C++
|
#ifndef SPROUT_CURRENT_FUNCTION_HPP
|
||
|
#define SPROUT_CURRENT_FUNCTION_HPP
|
||
|
|
||
|
#include <sprout/config.hpp>
|
||
|
|
||
|
namespace sprout {
|
||
|
namespace detail {
|
||
|
inline void
|
||
|
current_function_helper() {
|
||
|
#if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__)
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __PRETTY_FUNCTION__
|
||
|
|
||
|
#elif defined(__DMC__) && (__DMC__ >= 0x810)
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __PRETTY_FUNCTION__
|
||
|
|
||
|
#elif defined(__FUNCSIG__)
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __FUNCSIG__
|
||
|
|
||
|
#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500))
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __FUNCTION__
|
||
|
|
||
|
#elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __FUNC__
|
||
|
|
||
|
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901)
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION __func__
|
||
|
|
||
|
#else
|
||
|
|
||
|
# define SPROUT_CURRENT_FUNCTION "(unknown)"
|
||
|
|
||
|
#endif
|
||
|
}
|
||
|
} // namespace detail
|
||
|
} // namespace sprout
|
||
|
|
||
|
#endif // #ifndef SPROUT_CURRENT_FUNCTION_HPP
|