]> Cypherpunks.ru repositories - gostls13.git/blob - misc/cgo/test/callback_c_gc.c
misc/cgo: remove +build lines, add go:build where needed
[gostls13.git] / misc / cgo / test / callback_c_gc.c
1 // Copyright 2013 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 //go:build gc
6
7 #include "_cgo_export.h"
8 #include <stdint.h>
9 #include <stdio.h>
10 #include <stdlib.h>
11
12 /* Test calling panic from C.  This is what SWIG does.  */
13
14 extern void crosscall2(void (*fn)(void *, int), void *, int);
15 extern void _cgo_panic(void *, int);
16 extern void _cgo_allocate(void *, int);
17
18 void
19 callPanic(void)
20 {
21         struct { const char *p; } a;
22         a.p = "panic from C";
23         crosscall2(_cgo_panic, &a, sizeof a);
24         *(int*)1 = 1;
25 }