27 lines
586 B
Go
27 lines
586 B
Go
// Copyright 2018 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.
|
|
|
|
package main
|
|
|
|
/*
|
|
typedef void callback(char*);
|
|
extern void CallGoBigStack1(char*);
|
|
extern void bigStack(callback*);
|
|
*/
|
|
import "C"
|
|
|
|
func init() {
|
|
register("BigStack", BigStack)
|
|
}
|
|
|
|
func BigStack() {
|
|
// Create a large thread stack and call back into Go to test
|
|
// if Go correctly determines the stack bounds.
|
|
C.bigStack((*C.callback)(C.CallGoBigStack1))
|
|
}
|
|
|
|
//export goBigStack1
|
|
func goBigStack1(x *C.char) {
|
|
println("OK")
|
|
}
|