Using unsafe.Pointer instead of the C type: C.device_t solved the problem:
func Open() {
var dev unsafe.Pointer
C.open(&dev)
}
On Saturday, September 25, 2021 at 12:13:04 PM UTC-3 Elemer Pixard wrote:
> Correction: The Go function is:
> func Open() {
> var dev *C.device_t
> C.open(&dev)
> }
>
>
> On Saturday, September 25, 2021 at 10:59:45 AM UTC-3 Elemer Pixard wrote:
>
>> I am trying to call the following C function (simplified version from a C
>> library) from Go,
>> and I got compiler errors:
>> typedef void device_t;
>> void open(device_t **dev) {
>> }
>>
>> *Go Function*:
>> func Open() {
>>var dev C.device_t
>>C.open(&&dev)
>> }
>>
>> *Compiler (v1.17) error:*
>> cannot use _cgo0 (type **_Ctype_void) as type *unsafe.Pointer in argument
>> to _Cfunc_open
>>
>> How to fix that?
>> Regards.
>>
>
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/golang-nuts/d8ea9cef-4362-458b-afe0-1b07dfbeaf3an%40googlegroups.com.