Skip to content

fix permissive build issues with liblo callbacks#50

Open
brulzki wants to merge 1 commit intoessej:masterfrom
brulzki:bs/permissive-build-fixes
Open

fix permissive build issues with liblo callbacks#50
brulzki wants to merge 1 commit intoessej:masterfrom
brulzki:bs/permissive-build-fixes

Conversation

@brulzki
Copy link

@brulzki brulzki commented Mar 31, 2024

Building sooperlooper on gentoo fails with a lot of errors related to the gcc -fno-permissive being enabled by default. See the example error below.

This change replaces the 'void *data' parameters in liblo callbacks with 'lo_message data' and so removes those errors without having to enable -fpermissive.

Related gentoo bug: https://bugs.gentoo.org/925275

control_osc.cpp: In member function ‘void SooperLooper::ControlOSC::register_callbacks()’: control_osc.cpp:148:37: error: invalid conversion from ‘int (*)(const char*, const char*, lo_arg**, int, void*, void*)’ to ‘lo_method_handler’ {aka ‘int (*)(const char* , const char*, lo_arg**, int, lo_message_*, void*)’} [-fpermissive] 148 | lo_server_add_method(serv, "/quit", "", ControlOSC::_quit_handler, this); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | int (*)(const char*, const char*, lo_arg**, int, void*, void*) In file included from /usr/include/lo/lo.h:32, from control_osc.hpp:24, from control_osc.cpp:30: /usr/include/lo/lo_lowlevel.h:876:72: note: initializing argument 4 of ‘lo_method_* lo_server_add_method(lo_server, const char*, const char*, lo_method_handler, const void*)’ 876 | const char *typespec, lo_method_handler h, | ~~~~~~~~~~~~~~~~~~^

@Frank-Krick
Copy link

I had to do the same changes for arch. To bad I didn't see this before :)

Anyway, highly recommend to merge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants