This is the mail archive of the gdb-prs@sources.redhat.com 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]

cli/1182: skipping boring functions when stepping


>Number:         1182
>Category:       cli
>Synopsis:       skipping boring functions when stepping
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    unassigned
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Fri Apr 18 22:28:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     carlton at bactrian dot org
>Release:        GDB 5.3
>Organization:
>Environment:
any
>Description:
(A user at Kealia suggested this to me, and I've found this
to be annoying in my own debugging, too.)

It might be nice to be able to ignore certain 'boring'
functions when stepping: to tell 'step' (or another
command like step) that it should step into the next
function on the current line (if any) that isn't on some
list of excluded functions.  This would be really useful
when debugging C++ code: in an expression like

  foo(*a);

it happens all the time that a is really a smart pointer,
not a raw pointer, so you first step into the smart
pointer's operator*, then have to type 'finish', then have
to type 'step' again.

Any possible design would have to be somewhat flexible
to handle this case: smart pointers are template classes,
so this should be able to handle methods of template
classes without requiring the user to specify the types
of every single possible instantiation.  So I guess
this hypothetical ignore list should be a list of
regexps instead of just a list of names to match exactly.

>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


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