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 }