123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- // 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
|