//
#ifdef __clang__
-#if __has_include(<experimental/memory_resource>)
+#if __has_include(<memory_resource>)
+# define BOOST_LIBSTDCXX_VERSION 90100
+#elif __has_include(<charconv>)
+# define BOOST_LIBSTDCXX_VERSION 80100
+#elif __has_include(<variant>)
+# define BOOST_LIBSTDCXX_VERSION 70100
+#elif __has_include(<experimental/memory_resource>)
# define BOOST_LIBSTDCXX_VERSION 60100
#elif __has_include(<experimental/any>)
# define BOOST_LIBSTDCXX_VERSION 50100
# define BOOST_NO_CXX11_HDR_RATIO
# define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
# define BOOST_NO_CXX11_SMART_PTR
+# define BOOST_NO_CXX11_HDR_EXCEPTION
#else
# define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
# define BOOST_HAS_TR1_COMPLEX_OVERLOADS
#if (BOOST_LIBSTDCXX_VERSION < 70100) || (__cplusplus <= 201402L)
# define BOOST_NO_CXX17_STD_INVOKE
# define BOOST_NO_CXX17_STD_APPLY
+# define BOOST_NO_CXX17_HDR_OPTIONAL
+# define BOOST_NO_CXX17_HDR_STRING_VIEW
+# define BOOST_NO_CXX17_HDR_VARIANT
#endif
#if defined(__has_include)