aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/average.c
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>1999-06-28 23:04:32 +0000
committerJason Molenda <jmolenda@apple.com>1999-06-28 23:04:32 +0000
commit74cf13956febb1f6c8e0f5d5f48814953d41dd28 (patch)
treef06240a34afca06791450a91c8aac297abda27df /gdb/testsuite/gdb.base/average.c
parent9cd2c67bacb9aaa7e82457e68e1a6087c8bde928 (diff)
downloadgdb-74cf13956febb1f6c8e0f5d5f48814953d41dd28.zip
gdb-74cf13956febb1f6c8e0f5d5f48814953d41dd28.tar.gz
gdb-74cf13956febb1f6c8e0f5d5f48814953d41dd28.tar.bz2
import gdb-1999-06-28 snapshot
Diffstat (limited to 'gdb/testsuite/gdb.base/average.c')
-rw-r--r--gdb/testsuite/gdb.base/average.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/average.c b/gdb/testsuite/gdb.base/average.c
new file mode 100644
index 0000000..e1695ce
--- /dev/null
+++ b/gdb/testsuite/gdb.base/average.c
@@ -0,0 +1,46 @@
+/* This is a sample program for the HP WDB debugger. */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifdef PROTOTYPES
+extern int sum(int *, int, int);
+#else
+extern int sum();
+#endif
+
+#define num 10
+
+static int my_list[num] = {3,4,2,0,2,1,8,3,6,7};
+
+#ifdef PROTOTYPES
+void print_average(int *list, int low, int high)
+#else
+void print_average(list, low, high)
+int *list, low, high;
+#endif
+ {
+ int total = 0, num_elements = 0, average = 0;
+ total = sum(list, low, high);
+ num_elements = high - low; /* note this is an off-by-one bug */
+
+ average = total / num_elements;
+ printf("%10.d\n", average);
+ }
+
+#ifdef PROTOTYPES
+int main(void)
+#else
+main ()
+#endif
+{
+ char c;
+ int first = 0, last = 0;
+ last = num-1;
+
+ /* Try two test cases. */
+ print_average (my_list, first, last);
+ print_average (my_list, first, last - 3);
+
+ exit(0);
+}