summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/opaque0.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.base/opaque0.c')
-rw-r--r--gdb/testsuite/gdb.base/opaque0.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/opaque0.c b/gdb/testsuite/gdb.base/opaque0.c
new file mode 100644
index 00000000000..c6e239e4ac7
--- /dev/null
+++ b/gdb/testsuite/gdb.base/opaque0.c
@@ -0,0 +1,20 @@
+/* Note that struct foo is opaque (never defined) in this file. This
+ is allowed by C since this file does not reference any members of
+ the structure. The debugger needs to be able to associate this
+ opaque structure definition with the full definition in another
+ file.
+*/
+
+struct foo *foop;
+extern struct foo *getfoo ();
+
+int main ()
+{
+#ifdef usestubs
+ set_debug_traps();
+ breakpoint();
+#endif
+ foop = getfoo ();
+ putfoo (foop);
+ return 0;
+}