aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/advance.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.base/advance.c')
-rw-r--r--gdb/testsuite/gdb.base/advance.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/advance.c b/gdb/testsuite/gdb.base/advance.c
new file mode 100644
index 0000000..2ae3cc5
--- /dev/null
+++ b/gdb/testsuite/gdb.base/advance.c
@@ -0,0 +1,45 @@
+
+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;
+}
+
+int
+main ()
+{
+ int result;
+ int b, c;
+ c = 5;
+ b = 3; /* advance this location */
+
+ func (c); /* stop here after leaving current frame */
+ func3 (); /* break here */
+ result = bar (b + foo (c));
+ return 0; /* advance malformed */
+}
+