id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 7358,typedef T in Comparison class clashes with template argument T in d_ary_heap,Alex Hagen-Zanker ,timblechmann,"The d_ary_heap does not compile (in VS2010) when the Comparison class contains a typedef T. The typedef takes prevalence over the template parameter T when the heap is derived from the Comparison class. I.e. the following pattern occurs: template struct heap_base : Cmp { typedef T value_type; // value_type = Cmp::T } See below for a complete failing example. This is a problem when Boost.Heap is used in combination with boost/pending/indirect_cmp.hpp. #include struct less { typedef int T; bool operator()(const int& a, const int& b) const { return a < b; } }; int main() { boost::heap::d_ary_heap, boost::heap::arity<4> > my_heap; return 0; } ",Bugs,closed,To Be Determined,heap,Boost 1.52.0,Problem,fixed,indirect compare,