Wrong generated signature for some `Harfbuzz` functions
Hello, thank you for this useful project.
I've pulled the new gtk4 version 0.13.0 and tried to compile helloworld demo after updating the generated binding against local libraries, but compiler gave some errors in some of the generated functions in harfbuzz library version 4.4.1 like
Dependencies are satisfied
Building: hello_gtk
Error target hello_gtk failed to compile:
Showing last frame. Use --error-trace for full trace.
In lib/gtk4/lib/gi-crystal/src/auto/harf_buzz-0.0/lib_harf_buzz.cr:443:35
443 | fun hb_ft_font_create(ft_face : Void, destroy : Void*) : Pointer(Void)
^---
Error: can't use Void as parameter type
changing all Void reference to Void* abolished the error.
here are all functions
fun hb_ft_face_create(ft_face : Void, destroy : Void*) : Pointer(Void)
fun hb_ft_face_create_cached(ft_face : Void) : Pointer(Void)
fun hb_ft_face_create_referenced(ft_face : Void) : Pointer(Void)
fun hb_ft_font_create(ft_face : Void, destroy : Void*) : Pointer(Void)
fun hb_ft_font_create_referenced(ft_face : Void) : Pointer(Void)
thanks
I just updated my system and got this :gift: from harfbuzz.
I did a lazy fix, i.e. I added an option to ignore functions in the lib declaration, the ignore field on binding.yml just ignore the generation of Crystal code, but now there's a lib_ignore that ignore everywhere.
The lazy fix was to unblock people, and also because most of the people don't use HarfBuzz directly. It's not the first time a new HarfBuzz cause problems to binding generation, so I think this option can be useful in the future as well.
BTW, I'll let the bug open, since the bug wasn't really fixed yet, but at least the code compiles :-)