diff options
Diffstat (limited to 'src/runtime/testdata/testprogcgo/cgo.go')
-rw-r--r-- | src/runtime/testdata/testprogcgo/cgo.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/runtime/testdata/testprogcgo/cgo.go b/src/runtime/testdata/testprogcgo/cgo.go index cf1af8268c..5d2550dbb0 100644 --- a/src/runtime/testdata/testprogcgo/cgo.go +++ b/src/runtime/testdata/testprogcgo/cgo.go @@ -6,17 +6,20 @@ package main /* void foo1(void) {} +void foo2(void* p) {} */ import "C" import ( "fmt" "runtime" "time" + "unsafe" ) func init() { register("CgoSignalDeadlock", CgoSignalDeadlock) register("CgoTraceback", CgoTraceback) + register("CgoCheckBytes", CgoCheckBytes) } func CgoSignalDeadlock() { @@ -78,3 +81,10 @@ func CgoTraceback() { runtime.Stack(buf, true) fmt.Printf("OK\n") } + +func CgoCheckBytes() { + b := make([]byte, 1e6) + for i := 0; i < 1e3; i++ { + C.foo2(unsafe.Pointer(&b[0])) + } +} |