inline.hpp 976 B

12345678910111213141516171819202122232425262728293031323334
  1. //Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc.
  2. //Distributed under the Boost Software License, Version 1.0. (See accompanying
  3. //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  4. #ifndef BOOST_QVM_FORCEINLINE
  5. # if defined(_MSC_VER)
  6. # define BOOST_QVM_FORCEINLINE __forceinline
  7. # elif defined(__GNUC__) && __GNUC__>3
  8. # define BOOST_QVM_FORCEINLINE inline __attribute__ ((always_inline))
  9. # else
  10. # define BOOST_QVM_FORCEINLINE inline
  11. # endif
  12. #endif
  13. #ifndef BOOST_QVM_INLINE
  14. #define BOOST_QVM_INLINE inline
  15. #endif
  16. #ifndef BOOST_QVM_INLINE_TRIVIAL
  17. #define BOOST_QVM_INLINE_TRIVIAL BOOST_QVM_FORCEINLINE
  18. #endif
  19. #ifndef BOOST_QVM_INLINE_CRITICAL
  20. #define BOOST_QVM_INLINE_CRITICAL BOOST_QVM_FORCEINLINE
  21. #endif
  22. #ifndef BOOST_QVM_INLINE_OPERATIONS
  23. #define BOOST_QVM_INLINE_OPERATIONS BOOST_QVM_INLINE
  24. #endif
  25. #ifndef BOOST_QVM_INLINE_RECURSION
  26. #define BOOST_QVM_INLINE_RECURSION BOOST_QVM_INLINE_OPERATIONS
  27. #endif