Run Format

Text file misc/cgo/testso/cgoso_c.c

     1	// Copyright 2011 The Go Authors. All rights reserved.
     2	// Use of this source code is governed by a BSD-style
     3	// license that can be found in the LICENSE file.
     4	
     5	// +build ignore
     6	
     7	#ifdef WIN32
     8	// A Windows DLL is unable to call an arbitrary function in
     9	// the main executable. Work around that by making the main
    10	// executable pass the callback function pointer to us.
    11	void (*goCallback)(void);
    12	__declspec(dllexport) void setCallback(void *f)
    13	{
    14		goCallback = (void (*)())f;
    15	}
    16	__declspec(dllexport) void sofunc(void);
    17	#else
    18	extern void goCallback(void);
    19	void setCallback(void *f) { (void)f; }
    20	#endif
    21	
    22	void sofunc(void)
    23	{
    24		goCallback();
    25	}

View as plain text