help for the core dump in ::std::map
Hi ,
I have a core dump while access std map in sparc solaris ...
codes like below :
CItem * getItem(const string& id) { return m_mapItem[id]; }
m_mapItem defined as below :
map<string, CItem *> m_mapItem;
It is single threaded ....
every time access the map, a core generated ...
core like below :
t@9 (l@9) terminated by signal SEGV (no mapping at the fault address)
0xfdb46f14: compare+0x0010: ld [%o5 - 8], %o2
Current function is std::operator<
<char,std::char_traits<char>,std::allocator<char> >
....
[1] std::basic_string<char,std::char_traits<char>,std::allocator<char>
::compare(0x143450, 0x0, 0xff000000, 0x274f18, 0x0, 0xb9), at
0xfdb46f14
=>[2] std::operator< <char,std::char_traits<char>,std::allocator<char>
(lhs = CLASS, rhs = CLASS), line 1685 in "string"
[3]
std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
::operator()(this = 0xdf895, x = CLASS, y = CLASS), line 166 in
"functional"
[4]
__rwstd::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,std::pair<const
std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*>,__rwstd::__select1st<std::pair<const
std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,std::allocator<std::pair<const
std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*> > >::insert(this = 0xdf878, v = STRUCT), line 195 in
"tree.cc"
[5]
std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,std::allocator<std::pair<const
std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*> > >::insert(this = 0xdf878, x = STRUCT), line 237 in "map"
[6]
std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
,std::allocator<std::pair<const
std::basic_string<char,std::char_traits<char>,std::allocator<char>
,CMoc*> > >::operator[](this = 0xdf878, k = CLASS), line 233 in "map"
It seems while I use mapX[] , a insert is launched and core ....
Does anybody have a clue to investigate ?
Thanks in advance !