From aadc37eb2d2ad576a33aa5aee844ef846b22d942 Mon Sep 17 00:00:00 2001 From: mappu Date: Fri, 20 Sep 2024 19:30:32 +1200 Subject: [PATCH] genbindings: allow void* as unsafe.Pointer --- cmd/genbindings/emitgo.go | 4 ++++ cmd/genbindings/exceptions.go | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cmd/genbindings/emitgo.go b/cmd/genbindings/emitgo.go index 51b3565..16c42b0 100644 --- a/cmd/genbindings/emitgo.go +++ b/cmd/genbindings/emitgo.go @@ -35,6 +35,10 @@ func (p CppParameter) RenderTypeGo() string { return "map[" + t.RenderTypeGo() + "]struct{}" } + if p.ParameterType == "void" && p.Pointer { + return "unsafe.Pointer" + } + ret := "" if p.ByRef || p.Pointer { ret += "*" diff --git a/cmd/genbindings/exceptions.go b/cmd/genbindings/exceptions.go index 69eaa52..e090c6c 100644 --- a/cmd/genbindings/exceptions.go +++ b/cmd/genbindings/exceptions.go @@ -236,10 +236,6 @@ func CheckComplexity(p CppParameter, isReturnType bool) error { return ErrTooComplex } - if p.ParameterType == "void" && p.Pointer { - return ErrTooComplex // e.g. qobjectdefs.h QMetaObject->InvokeOnGadget(). TODO represent as uintptr - } - // Should be OK return nil }