Boost logo

Boost :

From: Sebastian Redl (sebastian.redl_at_[hidden])
Date: 2006-02-19 18:44:16


Robert Ramey wrote:

>http://tinyurl.com/s4ohn Shows the error message which is provoked by the
>following test code:
>
>// test array of objects
>BOOST_STD_EXTENSION_NAMESPACE::hash_set<A> ahash_set;
>...
>std::vector<A> tvec, tvec1;
>std::copy(ahash_set.begin(), ahash_set.end(), std::back_inserter(tvec)); //
>error starts here
>std::sort(tvec.begin(), tvec.end());
>
>a) I can't see anything wrong with this.
>b) No other compilers complain
>c) I can't follow the error message
>
>So if anyone has some insight here, I'd be glad to hear it.
>
>
Are you absolutely sure that's the line? The compiler is claiming that
it can't call the hashing function with an argument of type A (probably
means there's no appropriate overload). The puzzling thing is that it
wants to call the hasher because it's resizing the hashtable, and it's
doing that in response to a call to hash_set::insert - allegedly
directly from your code.

I can't track the error beyond this. The standard library in my GCC
3.4.4 is quite different.

Sebastian Redl


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk