Opened 10 years ago
#7310 new Bugs
filesystem::path::iterator::operator+ is unusable due to compile error
Reported by: | Owned by: | Beman Dawes | |
---|---|---|---|
Milestone: | To Be Determined | Component: | filesystem |
Version: | Boost 1.50.0 | Severity: | Problem |
Keywords: | path iterator | Cc: |
Description
Boost 1.50, MS Visual Studio 2010. I find that if I attempt to use the + operator on a path::iterator, I get a compiler error saying that the method "advance" is not part of path::iterator. If I comment out my use of this operator, and instead use only ++, then everything compiles.
Here are the details from the compiler:
boost/iterator/iterator_facade.hpp(544): error C2039: 'advance' : is not a member of 'boost::filesystem::path::iterator' boost/filesystem/path.hpp(570) : see declaration of 'boost::filesystem::path::iterator' boost/iterator/iterator_facade.hpp(690) : see reference to function template instantiation 'void boost::iterator_core_access::advance<Derived>(Facade &,__w64 int)' being compiled with [ Derived=boost::filesystem::path::iterator, Facade=boost::filesystem::path::iterator ] boost/iterator/iterator_facade.hpp(689) : while compiling class template member function 'boost::filesystem::path::iterator &boost::iterator_facade<Derived,Value,CategoryOrTraversal>::operator +=(__w64 int)' with [ Derived=boost::filesystem::path::iterator, Value=const boost::filesystem::path, CategoryOrTraversal=boost::bidirectional_traversal_tag ] boost/filesystem/path.hpp(574) : see reference to class template instantiation 'boost::iterator_facade<Derived,Value,CategoryOrTraversal>' being compiled with [ Derived=boost::filesystem::path::iterator, Value=const boost::filesystem::path, CategoryOrTraversal=boost::bidirectional_traversal_tag ]
Note:
See TracTickets
for help on using tickets.