Index: boost/property_tree/detail/ptree_implementation.hpp =================================================================== --- boost/property_tree/detail/ptree_implementation.hpp (revision 57433) +++ boost/property_tree/detail/ptree_implementation.hpp (working copy) @@ -22,6 +22,27 @@ { struct by_name {}; // The actual child container. + +#if defined(BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS) || \ + (defined(BOOST_MSVC) && ((BOOST_MSVC < 1300) || \ + (_MSC_FULL_VER == 160020506 || _MSC_FULL_VER == 160021003))) || \ + (defined(BOOST_INTEL_CXX_VERSION) && \ + (defined(_MSC_VER) && (BOOST_INTEL_CXX_VERSION <= 700))) + + BOOST_STATIC_CONSTANT(unsigned, from_offset = offsetof(value_type, first)); + + typedef multi_index_container, + multi_index::ordered_non_unique, + multi_index::member_offset, + key_compare + > + > + > base_container; +#else + typedef multi_index_container, @@ -32,6 +53,8 @@ > > > base_container; +#endif + // The by-name lookup index. typedef typename base_container::template index::type by_name_index;