// Copyright 2015 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 /* extern int *GoFn(int *); // Yes, you can have definitions if you use //export, as long as they are weak. int f(void) __attribute__ ((weak)); int f() { int i; int *p = GoFn(&i); if (*p != 12345) return 0; return 1; } */ import "C" //export GoFn func GoFn(p *C.int) *C.int { *p = C.int(12345) return p } func main() { if r := C.f(); r != 1 { panic(r) } }