diff --git a/include/boost/iterator/detail/facade_iterator_category.hpp b/include/boost/iterator/detail/facade_iterator_category.hpp index 67fdf44..6db45e4 100644 --- a/include/boost/iterator/detail/facade_iterator_category.hpp +++ b/include/boost/iterator/detail/facade_iterator_category.hpp @@ -4,6 +4,8 @@ #ifndef FACADE_ITERATOR_CATEGORY_DWA20031118_HPP # define FACADE_ITERATOR_CATEGORY_DWA20031118_HPP +# include + # include # include // used in iterator_tag inheritance logic @@ -33,8 +35,7 @@ namespace boost { namespace iterators { -// forward declaration -struct use_default; +using boost::use_default; namespace detail { diff --git a/include/boost/iterator/iterator_adaptor.hpp b/include/boost/iterator/iterator_adaptor.hpp index f803fc6..db1c4da 100644 --- a/include/boost/iterator/iterator_adaptor.hpp +++ b/include/boost/iterator/iterator_adaptor.hpp @@ -9,6 +9,8 @@ #include +#include + #include #include #include @@ -35,12 +37,10 @@ namespace iterators { // Used as a default template argument internally, merely to // indicate "use the default", this can also be passed by users // explicitly in order to specify that the default should be used. - struct use_default; + using boost::use_default; } // namespace iterators -using iterators::use_default; - // the incompleteness of use_default causes massive problems for // is_convertible (naturally). This workaround is fortunately not // needed for vc6/vc7.