summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/shmain.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.base/shmain.c')
-rw-r--r--gdb/testsuite/gdb.base/shmain.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/shmain.c b/gdb/testsuite/gdb.base/shmain.c
new file mode 100644
index 00000000000..dda5091cdc1
--- /dev/null
+++ b/gdb/testsuite/gdb.base/shmain.c
@@ -0,0 +1,47 @@
+/* A test */
+
+#include "ss.h"
+#include <stdio.h>
+
+extern int shr1();
+extern int shr2();
+extern float sg;
+
+int eglob;
+
+struct {
+ int a;
+ int b;
+} s;
+
+int g;
+
+int local_structarg(x)
+struct s x;
+{
+ return x.b;
+}
+
+main()
+{
+ struct s y;
+ g = 1;
+ g = shr1(g);
+ g = shr2(g);
+ g = mainshr1(g);
+ sg = 1.1;
+ printf("address of sg is 0x%x\n", &sg);
+ y.a = 3;
+ y.b = 4;
+ g = local_structarg(y);
+ g = structarg(y);
+ g = pstructarg(&y);
+
+ return (0);
+}
+
+int mainshr1(g)
+int g;
+{
+ return 2*g;
+}