-
Notifications
You must be signed in to change notification settings - Fork 1k
Open
Labels
bugSomething isn't workingSomething isn't workingcgoCGo and libc related issuesCGo and libc related issues
Description
// native.h
typedef struct Vector2
{
float x;
float y;
} Vector2;
Vector2 Vector2Add(Vector2 v1, Vector2 v2)
{
Vector2 result = {v1.x + v2.x, v1.y + v2.y};
return result;
}// main.go
package main
// #include "native.h"
import "C"
import "fmt"
func main() {
a := C.Vector2{1, 2}
b := C.Vector2{1, 2}
c := C.Vector2Add(a, b)
fmt.Println(c)
}> go run main.go
{2 4}> tinygo run main.go
{3 2}> tinygo version
tinygo version 0.33.0 darwin/amd64 (using go version go1.23.2 and LLVM version 18.1.2)supremestranger
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingcgoCGo and libc related issuesCGo and libc related issues