9ba61c5d3a
* gdb.base/advance.c (marker1): New marker function. * gdb.base/advance.exp: When the 'advance' command lands on the return breakpoint, it can legitimately stop on either the current line or the next line. Accommodate both outcomes. * gdb.base/until.exp: Likewise.
50 lines
541 B
C
50 lines
541 B
C
|
|
static int x;
|
|
|
|
int foo (int a)
|
|
{
|
|
int b = a + 10;
|
|
return b;
|
|
}
|
|
|
|
int bar (int y)
|
|
{
|
|
int z = y + 20;
|
|
return z;
|
|
}
|
|
|
|
void func()
|
|
{
|
|
x = x + 5;
|
|
func2 ();
|
|
}
|
|
|
|
int func2 ()
|
|
{
|
|
x = 6;
|
|
}
|
|
|
|
int func3 ()
|
|
{
|
|
x = 4;
|
|
}
|
|
|
|
void marker1 ()
|
|
{
|
|
}
|
|
|
|
int
|
|
main ()
|
|
{
|
|
int result;
|
|
int b, c;
|
|
c = 5;
|
|
b = 3; /* advance this location */
|
|
|
|
func (c); /* stop here after leaving current frame */
|
|
marker1 (); /* stop here after leaving current frame */
|
|
func3 (); /* break here */
|
|
result = bar (b + foo (c));
|
|
return 0; /* advance malformed */
|
|
}
|
|
|