Greetings,
I think my question is something like: "how to make my usage of C.uint64_t work on all platforms?" or "Is there something obviously wrong with my cgo bindings that is causing this not to build on all platforms?"
I wrote this cgo binding for the reference implementation of Sphincs+ (it's a hash based post quantum signature scheme):
Recently we noticed it fails to build on MacOS and Windows:
So I "fixed" it by changing the typecast to use C.uint64_t instead of C.ulong:
However that causes the build to fail using Go1.19.3 on MacOS, although it works on Windows:
Sincerely,
David Stainton