(1.43) unordered_map compile error with Sun CC 12
I am getting the following compilation error when using 1.43 version of unordered_map. $ CC -I<BOOST_INCLUDE_DIR> main.cpp -library=stlport4 "<BOOST_INCLUDE_DIR>/boost/unordered/detail/table.hpp", line 38: Error: Could not find a match for boost::unordered_detail::hash_table<boost::unordered_detail::T>::find_iterator<boost::unordered_detail::hash_table<boost::unordered_detail::T>::Key, boost::unordered_detail::hash_table<boost::unordered_detail::T>::Pred>(boost::unordered_detail::T::bucket_ptr, const boost::unordered_detail::Key&, const boost::unordered_detail::Pred&) const. "<BOOST_INCLUDE_DIR>/boost/unordered/detail/table.hpp", line 38: Error: Too many args in template, from boost::unordered_detail::Pred on ignored. "<BOOST_INCLUDE_DIR>/boost/unordered/detail/table.hpp", line 595: Error: Could not find a match for boost::unordered_detail::hash_table<boost::unordered_detail::T>::find(const boost::unordered_detail::Key&, const boost::unordered_detail::Hash&, const boost::unordered_detail::Pred&) const. "<BOOST_INCLUDE_DIR>/boost/unordered/detail/table.hpp", line 595: Error: Too many args in template, from boost::unordered_detail::Hash on ignored. 4 Error(s) detected. $ cat main.cpp #include <boost/unordered_map.hpp> int main() {} The same code compiles using boost 1.38. Is there any idea on what the issue is? -- Anand
On 9 July 2010 21:27, Anand Subramanian <agsubrama@aol.com> wrote:
I am getting the following compilation error when using 1.43 version of unordered_map.
[snip]
The same code compiles using boost 1.38. Is there any idea on what the issue is?
In Boost 1.41, I rewrote much of the implementation to take advantage of newer compilers. I guess that your compiler doesn't support out of class definition of template members of template classes. We don't test with it so it isn't really a compiler that I can support. Daniel
participants (2)
-
Anand Subramanian
-
Daniel James