Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / gil / io / path_spec.hpp
index e2bdf36..dcb2a85 100644 (file)
@@ -15,7 +15,7 @@
 #pragma clang diagnostic ignored "-Wshorten-64-to-32"
 #endif
 
-#if defined(BOOST_GCC) && (BOOST_GCC >= 40600)
+#if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wconversion"
 #endif
 #pragma clang diagnostic pop
 #endif
 
-#if defined(BOOST_GCC) && (BOOST_GCC >= 40600)
+#if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
 #pragma GCC diagnostic pop
 #endif
 #endif // BOOST_GIL_IO_ADD_FS_PATH_SUPPORT
 
-#include <boost/mpl/bool.hpp> // for complete types of true_ and false_
-
 #include <cstdlib>
 #include <string>
+#include <type_traits>
 
 namespace boost { namespace gil { namespace detail {
 
-template<typename P> struct is_supported_path_spec              : mpl::false_ {};
-template<> struct is_supported_path_spec< std::string >         : mpl::true_ {};
-template<> struct is_supported_path_spec< const std::string >   : mpl::true_ {};
-template<> struct is_supported_path_spec< std::wstring >        : mpl::true_ {};
-template<> struct is_supported_path_spec< const std::wstring >  : mpl::true_ {};
-template<> struct is_supported_path_spec< const char* >         : mpl::true_ {};
-template<> struct is_supported_path_spec< char* >               : mpl::true_ {};
-template<> struct is_supported_path_spec< const wchar_t* >      : mpl::true_ {};
-template<> struct is_supported_path_spec< wchar_t* >            : mpl::true_ {};
-
-template<int i> struct is_supported_path_spec<const char [i]>       : mpl::true_ {};
-template<int i> struct is_supported_path_spec<char [i]>             : mpl::true_ {};
-template<int i> struct is_supported_path_spec<const wchar_t [i]>    : mpl::true_ {};
-template<int i> struct is_supported_path_spec<wchar_t [i]>          : mpl::true_ {};
+template<typename P> struct is_supported_path_spec              : std::false_type {};
+template<> struct is_supported_path_spec< std::string >         : std::true_type {};
+template<> struct is_supported_path_spec< const std::string >   : std::true_type {};
+template<> struct is_supported_path_spec< std::wstring >        : std::true_type {};
+template<> struct is_supported_path_spec< const std::wstring >  : std::true_type {};
+template<> struct is_supported_path_spec< const char* >         : std::true_type {};
+template<> struct is_supported_path_spec< char* >               : std::true_type {};
+template<> struct is_supported_path_spec< const wchar_t* >      : std::true_type {};
+template<> struct is_supported_path_spec< wchar_t* >            : std::true_type {};
+
+template<int i> struct is_supported_path_spec<const char [i]>       : std::true_type {};
+template<int i> struct is_supported_path_spec<char [i]>             : std::true_type {};
+template<int i> struct is_supported_path_spec<const wchar_t [i]>    : std::true_type {};
+template<int i> struct is_supported_path_spec<wchar_t [i]>          : std::true_type {};
 
 #ifdef BOOST_GIL_IO_ADD_FS_PATH_SUPPORT
-template<> struct is_supported_path_spec< filesystem::path > : mpl::true_ {};
-template<> struct is_supported_path_spec< const filesystem::path > : mpl::true_ {};
+template<> struct is_supported_path_spec< filesystem::path > : std::true_type {};
+template<> struct is_supported_path_spec< const filesystem::path > : std::true_type {};
 #endif // BOOST_GIL_IO_ADD_FS_PATH_SUPPORT