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

Re: More than one stabn for the same PC


>>>>> "Jeffrey" == Jeffrey A Law <law@cygnus.com> writes:

    Jeffrey>   In message
    Jeffrey> <19991129223717L.mitchell@codesourcery.com>you write:
    >> >>>>> "Jeffrey" == Jeffrey A Law <law@cygnus.com> writes:
    >> 
    Jeffrey> Though I am curious, how does this happen?
    >>  We tend to do this with inlining.  (We're doing it more with
    >> inlining-on-trees, but we used to do it anyhow.)  Consider:
    >> 
    >> int i; inline int f () { i = 3; } void g() { f(); }
    >> 
    >> In `g' we first emit a line note for the line with the curly
    >> brace for `g', then emit a line note for the line with `i = 3'
    >> in it.  I think that's roughly the right thing, but the
    >> debugger gets confused.

    Jeffrey> Looking at that I'd claim only one of the line notes
    Jeffrey> should exist (probably the one of the "i = 3" statement.

That's not entirely unreasonable.  But, I'd like to be able to say
`break at <line where call to f is>' and have something sensible
happen.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

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