70 lines
1.9 KiB
C++
70 lines
1.9 KiB
C++
// Copyright 2008-2022 Emil Dotchevski and Reverge Studios, Inc.
|
|
|
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
#ifndef BOOST_QVM_CONFIG_HPP_INCLUDED
|
|
#define BOOST_QVM_CONFIG_HPP_INCLUDED
|
|
|
|
#if defined( BOOST_STRICT_CONFIG ) || defined( BOOST_QVM_NO_WORKAROUNDS )
|
|
# define BOOST_QVM_WORKAROUND( symbol, test ) 0
|
|
#else
|
|
# define BOOST_QVM_WORKAROUND( symbol, test ) ((symbol) != 0 && ((symbol) test))
|
|
#endif
|
|
|
|
#define BOOST_QVM_CLANG 0
|
|
#if defined(__clang__)
|
|
# undef BOOST_QVM_CLANG
|
|
# define BOOST_QVM_CLANG (__clang_major__ * 100 + __clang_minor__)
|
|
#endif
|
|
|
|
#if BOOST_QVM_WORKAROUND( BOOST_QVM_CLANG, < 304 )
|
|
# define BOOST_QVM_DEPRECATED(msg)
|
|
#elif defined(__GNUC__) || defined(__clang__)
|
|
# define BOOST_QVM_DEPRECATED(msg) __attribute__((deprecated(msg)))
|
|
#elif defined(_MSC_VER) && _MSC_VER >= 1900
|
|
# define BOOST_QVM_DEPRECATED(msg) [[deprecated(msg)]]
|
|
#else
|
|
# define BOOST_QVM_DEPRECATED(msg)
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_FORCEINLINE
|
|
# if defined(_MSC_VER)
|
|
# define BOOST_QVM_FORCEINLINE __forceinline
|
|
# elif defined(__GNUC__) && __GNUC__>3
|
|
# define BOOST_QVM_FORCEINLINE inline __attribute__ ((always_inline))
|
|
# else
|
|
# define BOOST_QVM_FORCEINLINE inline
|
|
# endif
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_INLINE
|
|
# define BOOST_QVM_INLINE inline
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_INLINE_TRIVIAL
|
|
# define BOOST_QVM_INLINE_TRIVIAL BOOST_QVM_FORCEINLINE
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_INLINE_CRITICAL
|
|
# define BOOST_QVM_INLINE_CRITICAL BOOST_QVM_FORCEINLINE
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_INLINE_OPERATIONS
|
|
# define BOOST_QVM_INLINE_OPERATIONS BOOST_QVM_INLINE
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_INLINE_RECURSION
|
|
# define BOOST_QVM_INLINE_RECURSION BOOST_QVM_INLINE_OPERATIONS
|
|
#endif
|
|
|
|
#ifndef BOOST_QVM_CONSTEXPR
|
|
# if __cplusplus >= 201703L
|
|
# define BOOST_QVM_CONSTEXPR constexpr
|
|
# else
|
|
# define BOOST_QVM_CONSTEXPR
|
|
# endif
|
|
#endif
|
|
|
|
#endif
|