Skip to content

fix permissive build issues with liblo callbacks#50

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

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

Conversation

@brulzki

@brulzki brulzki commented Mar 31, 2024

Copy link
Copy Markdown

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
Copy Markdown

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