
On 20/03/2008, Abir Basak
Yes, MSVC 9 (i.e 2008) runs it properly, but MSVC 7.1 (2003 . NET) fails to compile it. It looks like, for some reason node_ = data::next_group(node_); from increment_group() tries to construct data, which is a typedef to BOOST_UNORDERED_TABLE_DATA even while using static function for that. just changing the statement to node_ = next_group(node_); (hash_table_impl.hpp cvs line no 301) works. so it seems, msvc 7. either doesn't support calling static function by class name typedef, or the data typedef is confused with some other (like BOOST_UNORDERED_TABLE) note node_ = BOOST_UNORDERED_TABLE_DATA::next_group(node_); also works fine.
OK, thanks for investigating this. I'll change it to 'BOOST_UNORDERED_TABLE_DATA::next_group(node_)' or something similar. It's a bit odd that this hasn't shown up in the unit tests, but the change seems fine. I was only using 'data' for the sake of readability. Daniel