This is the mail archive of the gdb@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]

Re: does bpstat_print stop printing prematurely?


>  > Assuming one decides to print all breakpoints, either move the
>  > control for source/frame printing into bpstat_print or pull
>  > the loop in bpstat_print into normal_stop().
> 
> Hmmm... another possibility is to do neither.
> Instead, with the preprocessing pass in bpstat_print one
> could early exit if printit_done is found, otherwise print
> all the non-pc breakpoints first, then print all the pc-breakpoints last,
> and then return one of `print_stop_action'.
> 
> That's requires a minimal amount of change and feels safest.
> The only issue is whether programs that parse the output would
> get confused if multiple pc breakpoints get reported.
> The source location would still only be printed once so I'm guessing
> it's ok, but someone with some knowledge of all the various
> programs that parse the output should be consulted.

Hmm,

Yes, I agree with the comment about not reporting multiple watchpoint 
trigers is a bug.  As for breakpoints, normal behavour is to just report 
the first real breakpoint - you've previously been advised that you've 
multiple breakpoints and I'm guessing this [unfortunatly] is behind the 
early loop exit.

The functions that handle bpstat are in bad shape anyway.  One function 
should analyze the stop reason creating the list.  A second function 
should use this list to decide what to print.  MI needs this separation 
to be able to report stop events reliably.

Anyway, suggest at least bug-reporting it.

Andrew


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