summaryrefslogtreecommitdiffstats
path: root/misc/cgo/test/issue5548_c.c
diff options
context:
space:
mode:
Diffstat (limited to 'misc/cgo/test/issue5548_c.c')
-rw-r--r--misc/cgo/test/issue5548_c.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/misc/cgo/test/issue5548_c.c b/misc/cgo/test/issue5548_c.c
new file mode 100644
index 0000000..8411526
--- /dev/null
+++ b/misc/cgo/test/issue5548_c.c
@@ -0,0 +1,24 @@
+// Copyright 2013 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+#include "_cgo_export.h"
+
+static void clobber_stack() {
+ volatile char a[1024];
+ int i;
+ for(i = 0; i < sizeof a; i++)
+ a[i] = 0xff;
+}
+
+static int call_go() {
+ GoString s;
+ s.p = "test";
+ s.n = 4;
+ return issue5548FromC(s, 42);
+}
+
+int issue5548_in_c() {
+ clobber_stack();
+ return call_go();
+}