MDB: что эти дополнительные адреса отображаются в стеке ядра?

Вопрос, связанный с MDB.

Я столкнулся с дампом ядра, для которого стек указывает на оператор присваивания RWCString. (Жулик-волна)
Вот стопка, напечатанная mdb на солярисе.

> ::stack
libCstd.so.1`std::basic_string<char,std::char_traits<char>,std::allocator<char> >&std::basic_string<char,std::char_traits<char>,std::allocator<char>
>::operator=+0x118(19f9f34, f847b480, 45, 1908, 0, 19f9f34)
RWCString&RWCString::assign+0x18(19f9f34, f847b480, fb6e4950, 0, 201e8, 20)
RWCString&RWCString::operator=+0x18(19f9f34, f847b480, d8965909, ff1df0ac, ff1df0ac, fca59c39)

приведенный код представляет собой присвоение const char * для RWString, что-то вроде этого

const char * ch = "ABCD"RWCString str = ch;

Теперь мой вопрос: что это за дополнительный адрес в operator =, который отображается в стеке?

то есть в очереди

RWCString&RWCString::operator=+0x18(19f9f34, f847b480, d8965909, ff1df0ac, ff1df0ac, fca59c39)

когда я дам адрес f847b480 он показывает точную строку, которая копируется. так что это RHS оператора присваивания, один из адресов может быть LHS. но каковы эти другие адреса, как 19f9f34, d8965909, ff1df0ac, fca59c39, .. так далее ?

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]