Index: indirect_cmp.hpp =================================================================== --- indirect_cmp.hpp (revision 80416) +++ indirect_cmp.hpp (working copy) @@ -33,15 +33,14 @@ typedef typename boost::property_traits::key_type K; typedef K first_argument_type; typedef K second_argument_type; - typedef T result_type; + typedef typedef Compare::result_type result_type; inline indirect_cmp(const ReadablePropertyMap& df, const Compare& c = Compare()) : d(df), cmp(c) { } template - inline bool + inline result_type operator()(const A& u, const B& v) const { - T du = get(d, u), dv = get(d, v); - return cmp(du, dv); + return cmp(get(d, u), get(d, v)); } protected: ReadablePropertyMap d;