stack specific breakpoint

kamaraju kusumanchi <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <CABpbYadoRdLsKn+iCWPJwkeYg_1JDGbXxY0geKsiAynqGpoVrg@mail.gmail.com>
Is there a way to set a breakpoint in a function A only when it is
called from function B? In my case, I have

funcB()
{
    ....
    funcA( funcD(), funcE())
    ....
}

funcC()
{
    ....
    funcA(funcD(), funcE())
    ....
}

where funcA is called by both funcB and funcC. funcC is called a lot
of times (the exact number is not known either at run time or compile
time) and funcB is called only a handful of times. The additional
twist is that the arguments passed to funcA are the return values from
other functions - funcD and funcE.

I am interested in stepping into funcA only when it is called from
funcB. Is there a way to specify the function hierarchy when setting a
break point?

I tried setting a break point where funcB calls funcA and then use the
"step" command. But this steps into funcD() instead of funcA().

Currently, my work around is to first set a breakpoint where funcB
calls funcA and when the code hits that set another break point in
funcA. Once code finishes funcA, I will disable it (since it could be
called by funcC afterwards). I will reenable it when it hits the funcA
line in funcB definition. But doing this enable/disable dance is
tiresome. Is there a better way to achiever this?

If this is feature is not supported, could you please add this to the wishlist?

thanks
raju
-- 
Kamaraju S Kusumanchi
http://malayamaarutham.blogspot.com/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.