For the following code:
// start of code
#include <iostream>
#include <string>
#include
int main()
{
using namespace std;
using namespace boost;
string s = "first second third";
tokenizer<> tok(s);
for(tokenizer<>::iterator i = tok.begin(); i != tok.end(); ++i)
cout << *i << "\n";
}
// end of code
With the Sun CC compiler (Sun WorkShop 6 update 2 C++ 5.3), I get the
following error message:
"/usr/include/boost/iterator/iterator_facade.hpp", line 623: Error:
Could not find a match for
boost::iterator_core_access::equal(const
boost::token_iterator, const char*, std::basic_string>, const
boost::token_iterator, const char*, std::basic_string>,
boost::is_convertible, const char*, std::basic_string>,
boost::token_iterator, const char*, std::basic_string>>).
"t.cpp", line 15: Where: While instantiating
"boost::operator!=, const char*, std::basic_string>,
std::basic_string,
boost::forward_traversal_tag, const std::basic_string&, int,
boost::token_iterator, const char*, std::basic_string>,
std::basic_string,
boost::forward_traversal_tag, const std::basic_string&, int>(const
boost::iterator_facade, const char*, std::basic_string>,
std::basic_string,
boost::forward_traversal_tag, const std::basic_string&, int>&, const
boost::iterator_facade, const char*, std::basic_string>,
std::basic_string,
boost::forward_traversal_tag, const std::basic_string&, int>&)".
"t.cpp", line 15: Where: Instantiated from non-template code.
1 Error(s) detected.
What could be the problem here?
If Sun CC 5.3 doesnt support boost::tokenizer at all, are there any
workarounds that I could use?