# include <boost/type_traits/is_same.hpp>
# include <boost/type_traits/remove_pointer.hpp>
# include <boost/type_traits/remove_reference.hpp>
+# include <boost/utility/declval.hpp>
# include <boost/utility/enable_if.hpp>
# include <boost/utility/result_of.hpp>
#endif // defined(BOOST_ASIO_HAS_TYPE_TRAITS)
using std::add_const;
using std::conditional;
using std::decay;
+using std::declval;
using std::enable_if;
using std::false_type;
using std::integral_constant;
struct enable_if : boost::enable_if_c<Condition, Type> {};
using boost::conditional;
using boost::decay;
+using boost::declval;
using boost::false_type;
using boost::integral_constant;
using boost::is_base_of;