Hi all. I am trying to compile a java memory profiler (ejp) on Fedora Core 4 x86-64 (g++ (GCC) 4.0.0 20050519 (Red Hat 4.0.0-8) ). The compilation of a file fails with the following error; strangely it seems that the right function is writtent but GCC does not recognise it; any hint on how to solve this? Thanks. /usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/bits/stl_tree.h: In member function âvoid std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::destroy_node(std::_Rb_tree_node<_Val>*) [with _Key = _jmethodID*, _Val = std::pair<_jmethodID* const, u4>, _KeyOfValue = std::_Select1st<std::pair<_jmethodID* const, u4> >, _Compare = std::less<_jmethodID*>, _Alloc = __gnu_cxx::malloc_allocator<std::pair<_jmethodID*, u4> >]â: /usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/bits/stl_tree.h:1057: instantiated from âvoid std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_erase(std::_Rb_tree_node<_Val>*) [with _Key = _jmethodID*, _Val = std::pair<_jmethodID* const, u4>, _KeyOfValue = std::_Select1st<std::pair<_jmethodID* const, u4> >, _Compare = std::less<_jmethodID*>, _Alloc = __gnu_cxx::malloc_allocator<std::pair<_jmethodID*, u4> >]â /usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/bits/stl_tree.h:570: instantiated from âstd::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::~_Rb_tree() [with _Key = _jmethodID*, _Val = std::pair<_jmethodID* const, u4>, _KeyOfValue = std::_Select1st<std::pair<_jmethodID* const, u4> >, _Compare = std::less<_jmethodID*>, _Alloc = __gnu_cxx::malloc_allocator<std::pair<_jmethodID*, u4> >]â /usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/bits/stl_map.h:148: instantiated from âstd::map<_Key, _Tp, _Compare, _Alloc>::map() [with _Key = _jmethodID*, _Tp = u4, _Compare = std::less<_jmethodID*>, _Alloc = __gnu_cxx::malloc_allocator<std::pair<_jmethodID*, u4> >]â ../src/native/Globals.cpp:49: instantiated from here /usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/bits/stl_tree.h:389: error: no matching function for call to â__gnu_cxx::malloc_allocator<std::pair<_jmethodID*, u4>
::destroy(std::pair<_jmethodID* const, u4>*)â
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/../../../../include/c++/4.0.0/ext/malloc_allocator.h:111: note: candidates are: void __gnu_cxx::malloc_allocator<_Tp>::destroy(_Tp*) [with _Tp = std::pair<_jmethodID*, u4>] Alessandro Malgaroli