This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: reversible debugging, enhancements, proposals


Hi,

let me attempt to explain with example.

struct _A
{
     int fl1;
     struct _A *next; 
}

struct _X
{
          int no1;
       struct _A *a; 
       struct _X *next;
}


if commands are provided something like below, rather than having people edit 
the .gdbinit file, script, 'source' command 


gdb> load_link _X  500    (indicates load 500 nodes)
gdb> pview fl1   (print all fl1 values of all nodes)


now this was just an example, it could be supporting any level of nesting, and 
any level of data structure.
the advantage is, user just have to load relevant structure online on gdn prompt 
and ready to view any data any time in any node... rather than playing with 
script and running them and editing them.

In conclusion, I think direct command line interface for such facility is 
convenient and easy to use.

Regards,
Oza.

















----- Original Message ----
From: Jan Kratochvil <jan.kratochvil@redhat.com>
To: paawan oza <paawan1982@yahoo.com>
Cc: gdb@sourceware.org
Sent: Fri, October 15, 2010 8:48:03 PM
Subject: Re: reversible debugging, enhancements, proposals

On Fri, 15 Oct 2010 15:48:57 +0200, paawan oza wrote:
> but my point is: it becomes cumbesome for user to go and modify the 
> file/.gdbinit macro or script.

Projects provide their own .gdbinit files (gcc/gdbinit.in, emacs/src/.gdbinit)
for examining the project's specific data structures.

For example for GList (Gnome glib) it cannot work fully automatically as its
->data is void *.


> you have losts of data streuctures like linked list, complex tree, btree 
>etc....
> and most of the user is not predetermined to se where he wants to look....it 

Maybe a pretty printer could have a hint if one wants to print just a single
element or the whole list?

Or if printing a pointer (and not curretly implemented *pointer) it could
print the whole list?  That may be confusing, though.


Thanks,
Jan



      


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]