[sisyphus] C++ & gdb

Vlad Harchev =?iso-8859-1?q?hvv_=CE=C1_hippo=2Eru?=
Пн Сен 23 13:22:25 MSD 2002


On Mon, 23 Sep 2002, Alexey Morozov wrote:

> Скажите, а кто чем отлаживает программы на C++? gdb, по-моему,
> достаточно ущербный в этом плане. Во всяком случае, с задачей показа
> содержимого объектов сложных классов он практически не справляется.
> У меня тут библиотечка, написанная в ATL'ном стиле, показ любого
> сколько-нибудь сложного объекта кончается примерно так:
> 
> (gdb) display p
> 1: p = {<raw_packet_ptr<server::dgram::packet>> = {
>     p = 0x80688d8}, <No data fields>}
> gdb) display p.p
> 2: p.p = (packet *) 0x80688d8
> (gdb) display *p.p
> 3: *p.p = Value can't be converted to integer.
> Disabling display 3 to avoid infinite recursion.
> (gdb) _
> Хотя ptype на *p.p вполне себе работает.
> Это как-нибудь лечится или таки в морг. А если в морг - то чем ведущие
> собаководы пользуются для подобных целей? А то ведь рядом сидит дружок
> на MSVC6 - и вовсю все эти структуры данных просматривает и прочее...
> Прям хоть на винде сервер разрабатывай...

 Глупый вопрос - а программа собрана с -g3?
 А gdb какой версии?
 А если попробовать то же самое скомпилить и поотлаживать под rh73? (Может
программа собрана gcc-3.x а он генерит инфу о типах в немного непонятном
формате для gdb или в rh какие-либо выпрямляющие патчи приложены?)

 Best regards,
  -Vlad




Подробная информация о списке рассылки Sisyphus