1 #include <boost/config.hpp> 2 3 #if defined(BOOST_MSVC) 4 #pragma warning(disable: 4786) // identifier truncated in debug info 5 #pragma warning(disable: 4710) // function not inlined 6 #pragma warning(disable: 4711) // function selected for automatic inline expansion 7 #pragma warning(disable: 4514) // unreferenced inline removed 8 #endif 9 10 // 11 // bind_dm3_test.cpp - data members (regression 1.31 - 1.32) 12 // 13 // Copyright (c) 2005 Peter Dimov 14 // 15 // Distributed under the Boost Software License, Version 1.0. (See 16 // accompanying file LICENSE_1_0.txt or copy at 17 // http://www.boost.org/LICENSE_1_0.txt) 18 // 19 20 #include <boost/bind/bind.hpp> 21 #include <boost/core/lightweight_test.hpp> 22 #include <utility> 23 24 using namespace boost::placeholders; 25 26 // 27 main()28int main() 29 { 30 typedef std::pair<int, int> pair_type; 31 32 pair_type pair( 10, 20 ); 33 34 int const & x = boost::bind( &pair_type::first, _1 )( pair ); 35 36 BOOST_TEST( &pair.first == &x ); 37 38 return boost::report_errors(); 39 } 40