summaryrefslogtreecommitdiff
path: root/boost/interprocess/detail/workaround.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/interprocess/detail/workaround.hpp')
-rw-r--r--boost/interprocess/detail/workaround.hpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/boost/interprocess/detail/workaround.hpp b/boost/interprocess/detail/workaround.hpp
index d7e86f464d..5089696fb6 100644
--- a/boost/interprocess/detail/workaround.hpp
+++ b/boost/interprocess/detail/workaround.hpp
@@ -1,6 +1,6 @@
//////////////////////////////////////////////////////////////////////////////
//
-// (C) Copyright Ion Gaztanaga 2005-2012. Distributed under the Boost
+// (C) Copyright Ion Gaztanaga 2005-2015. 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)
//
@@ -19,8 +19,6 @@
# pragma once
#endif
-#include <boost/interprocess/detail/config_begin.hpp>
-
#if defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
#define BOOST_INTERPROCESS_WINDOWS
#define BOOST_INTERPROCESS_FORCE_GENERIC_EMULATION
@@ -191,6 +189,17 @@
#define BOOST_INTERPROCESS_I ,
#define BOOST_INTERPROCESS_DOCIGN(T1) T1
-#include <boost/interprocess/detail/config_end.hpp>
+//#define BOOST_INTERPROCESS_DISABLE_FORCEINLINE
+
+#if defined(BOOST_INTERPROCESS_DISABLE_FORCEINLINE)
+ #define BOOST_INTERPROCESS_FORCEINLINE inline
+#elif defined(BOOST_INTERPROCESS_FORCEINLINE_IS_BOOST_FORCELINE)
+ #define BOOST_INTERPROCESS_FORCEINLINE BOOST_FORCEINLINE
+#elif defined(BOOST_MSVC) && defined(_DEBUG)
+ //"__forceinline" and MSVC seems to have some bugs in debug mode
+ #define BOOST_INTERPROCESS_FORCEINLINE inline
+#else
+ #define BOOST_INTERPROCESS_FORCEINLINE BOOST_FORCEINLINE
+#endif
#endif //#ifndef BOOST_INTERPROCESS_DETAIL_WORKAROUND_HPP