mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-07-26 06:38:42 +00:00
cgo: add C._Bool type
This fixes https://github.com/tinygo-org/tinygo/issues/3926. While working on this I've found another bug: if C.bool is referenced from within Go, it isn't available anymore on the C side. This is an existing bug that also applies to float and double, but may be less likely to be triggered there. This bug is something to be fixed at a later time (it has something to do with preprocessor defines).
This commit is contained in:
committed by
Ron Evans
parent
a896f7f218
commit
6ef8fcd537
Vendored
+4
@@ -9,6 +9,7 @@ int mul(int, int);
|
||||
#include <string.h>
|
||||
#cgo CFLAGS: -DSOME_CONSTANT=17
|
||||
#define someDefine -5 + 2 * 7
|
||||
bool someBool;
|
||||
*/
|
||||
import "C"
|
||||
|
||||
@@ -56,6 +57,9 @@ func main() {
|
||||
var goInt8 int8 = 5
|
||||
var _ C.int8_t = goInt8
|
||||
|
||||
var _ bool = C.someBool
|
||||
var _ C._Bool = C.someBool
|
||||
|
||||
// more globals
|
||||
println("bool:", C.globalBool, C.globalBool2 == true)
|
||||
println("float:", C.globalFloat)
|
||||
|
||||
Reference in New Issue
Block a user