mirror of https://github.com/CGAL/cgal
No longer forward declare struct std:hash
This commit is contained in:
parent
eb22148902
commit
bf975ead95
|
|
@ -564,8 +564,7 @@ namespace std {
|
|||
# pragma warning(disable:4099) // For VC10 it is class hash
|
||||
#endif
|
||||
|
||||
template < class T>
|
||||
struct hash;
|
||||
#ifndef CGAL_CFG_NO_STD_HASH
|
||||
|
||||
template <class CIterator_, class Filter_, class MIterator_,
|
||||
class Value_, class Diff_, class Category_>
|
||||
|
|
@ -607,7 +606,15 @@ struct hash<CGAL::I_Filtered_const_iterator<CIterator_,
|
|||
return reinterpret_cast<std::size_t>(&*i) / sizeof(typename I::value_type);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif // CGAL_CFG_NO_STD_HASH
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
} // namespace std
|
||||
|
||||
namespace boost {
|
||||
template <typename T> struct hash;
|
||||
|
||||
|
|
@ -652,9 +659,5 @@ struct hash<CGAL::I_Filtered_const_iterator<CIterator_,
|
|||
}
|
||||
};
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
}
|
||||
} // namespace boost
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -188,6 +188,10 @@
|
|||
#define CGAL_CXX11
|
||||
#endif
|
||||
|
||||
#if defined(BOOST_NO_CXX11_HDR_FUNCTIONAL) || BOOST_VERSION < 105000
|
||||
#define CGAL_CFG_NO_STD_HASH 1
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------//
|
||||
// auto-link the CGAL library on platforms that support it
|
||||
//----------------------------------------------------------------------//
|
||||
|
|
|
|||
|
|
@ -1177,8 +1177,7 @@ namespace std {
|
|||
# pragma warning(disable:4099) // For VC10 it is class hash
|
||||
#endif
|
||||
|
||||
template < class T>
|
||||
struct hash;
|
||||
#ifndef CGAL_CFG_NO_STD_HASH
|
||||
|
||||
template < class DSC, bool Const >
|
||||
struct hash<CGAL::internal::CC_iterator<DSC, Const> >
|
||||
|
|
@ -1189,10 +1188,12 @@ namespace std {
|
|||
return reinterpret_cast<std::size_t>(&*i) / sizeof(typename DSC::value_type);
|
||||
}
|
||||
};
|
||||
#endif // CGAL_CFG_NO_STD_HASH
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
}
|
||||
} // namespace boost
|
||||
|
||||
#endif // CGAL_COMPACT_CONTAINER_H
|
||||
|
|
|
|||
|
|
@ -778,8 +778,7 @@ namespace std {
|
|||
# pragma warning(disable:4099) // For VC10 it is class hash
|
||||
#endif
|
||||
|
||||
template < class T>
|
||||
struct hash;
|
||||
#ifndef CGAL_CFG_NO_STD_HASH
|
||||
|
||||
template < class T, class Alloc >
|
||||
struct hash<CGAL::internal::In_place_list_iterator<T, Alloc> >
|
||||
|
|
@ -802,10 +801,12 @@ namespace std {
|
|||
return reinterpret_cast<std::size_t>(ptr)/ sizeof(T);
|
||||
}
|
||||
};
|
||||
#endif // CGAL_CFG_NO_STD_HASH
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
}
|
||||
} // namespace std
|
||||
|
||||
#endif // CGAL_IN_PLACE_LIST_H
|
||||
|
|
|
|||
|
|
@ -3133,10 +3133,7 @@ namespace std {
|
|||
# pragma warning(disable:4099) // For VC10 it is class hash
|
||||
#endif
|
||||
|
||||
#ifndef DOXYGEN_RUNNING
|
||||
template < class T>
|
||||
struct hash;
|
||||
#endif
|
||||
#ifndef CGAL_CFG_NO_STD_HASH
|
||||
|
||||
template <>
|
||||
struct hash<CGAL::SM_Halfedge_index >
|
||||
|
|
@ -3177,7 +3174,13 @@ namespace std {
|
|||
return i;
|
||||
}
|
||||
};
|
||||
}
|
||||
#endif // CGAL_CFG_NO_STD_HASH
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
} // namespace std
|
||||
|
||||
namespace boost {
|
||||
template <>
|
||||
|
|
@ -3188,11 +3191,7 @@ namespace boost {
|
|||
}
|
||||
};
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
# pragma warning(pop)
|
||||
#endif
|
||||
|
||||
}
|
||||
} // namespace boost
|
||||
|
||||
#endif /* CGAL_SURFACE_MESH_H */
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue