In file included from /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/furi.h:5, from /home/runner/work/_temp/app/code/qrcode_app.c:1: /home/runner/work/_temp/app/code/qrcode_app.c: In function 'render_callback': /home/runner/work/_temp/app/code/qrcode_app.c:160:43: error: passing argument 1 of 'furi_mutex_acquire' from incompatible pointer type [-Werror=incompatible-pointer-types] 160 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:64:14: note: in definition of macro '__furi_check' 64 | if(!(__e)) { \ | ^~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:5: note: in expansion of macro 'M_APPLY' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:30: note: in expansion of macro 'M_DEFAULT_ARGS_EVAL' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:50: note: in expansion of macro 'M_DEFAULT_ARGS2' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:27: note: in expansion of macro 'M_DEFAULT_ARGS' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:160:5: note: in expansion of macro 'furi_check' 160 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ^~~~~~~~~~ In file included from /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/furi.h:14: /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:42:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 42 | FuriStatus furi_mutex_acquire(FuriMutex* instance, uint32_t timeout); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:244:32: error: passing argument 1 of 'furi_mutex_release' from incompatible pointer type [-Werror=incompatible-pointer-types] 244 | furi_mutex_release(instance->mutex); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:50:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 50 | FuriStatus furi_mutex_release(FuriMutex* instance); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c: In function 'qrcode_load_string': /home/runner/work/_temp/app/code/qrcode_app.c:405:43: error: passing argument 1 of 'furi_mutex_acquire' from incompatible pointer type [-Werror=incompatible-pointer-types] 405 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:64:14: note: in definition of macro '__furi_check' 64 | if(!(__e)) { \ | ^~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:5: note: in expansion of macro 'M_APPLY' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:30: note: in expansion of macro 'M_DEFAULT_ARGS_EVAL' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:50: note: in expansion of macro 'M_DEFAULT_ARGS2' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:27: note: in expansion of macro 'M_DEFAULT_ARGS' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:405:5: note: in expansion of macro 'furi_check' 405 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ^~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:42:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 42 | FuriStatus furi_mutex_acquire(FuriMutex* instance, uint32_t timeout); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:509:32: error: passing argument 1 of 'furi_mutex_release' from incompatible pointer type [-Werror=incompatible-pointer-types] 509 | furi_mutex_release(instance->mutex); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:50:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 50 | FuriStatus furi_mutex_release(FuriMutex* instance); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c: In function 'qrcode_app_alloc': /home/runner/work/_temp/app/code/qrcode_app.c:627:21: error: assignment to 'FuriMutex **' from incompatible pointer type 'FuriMutex *' [-Werror=incompatible-pointer-types] 627 | instance->mutex = furi_mutex_alloc(FuriMutexTypeNormal); | ^ /home/runner/work/_temp/app/code/qrcode_app.c: In function 'qrcode_app_free': /home/runner/work/_temp/app/code/qrcode_app.c:655:29: error: passing argument 1 of 'furi_mutex_free' from incompatible pointer type [-Werror=incompatible-pointer-types] 655 | furi_mutex_free(instance->mutex); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:33:33: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 33 | void furi_mutex_free(FuriMutex* instance); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c: In function 'qrcode_app': /home/runner/work/_temp/app/code/qrcode_app.c:693:51: error: passing argument 1 of 'furi_mutex_acquire' from incompatible pointer type [-Werror=incompatible-pointer-types] 693 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:64:14: note: in definition of macro '__furi_check' 64 | if(!(__e)) { \ | ^~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:5: note: in expansion of macro 'M_APPLY' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:30: note: in expansion of macro 'M_DEFAULT_ARGS_EVAL' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/lib/mlib/m-core.h:1806:50: note: in expansion of macro 'M_DEFAULT_ARGS2' 1806 | #define M_DEFAULT_ARGS( ...) M_DEFAULT_ARGS_EVAL(M_DEFAULT_ARGS2(__VA_ARGS__)) | ^~~~~~~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/check.h:74:27: note: in expansion of macro 'M_DEFAULT_ARGS' 74 | M_APPLY(__furi_check, M_DEFAULT_ARGS(2, (__FURI_CHECK_MESSAGE_FLAG), __VA_ARGS__)) | ^~~~~~~~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:693:13: note: in expansion of macro 'furi_check' 693 | furi_check(furi_mutex_acquire(instance->mutex, FuriWaitForever) == FuriStatusOk); | ^~~~~~~~~~ /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:42:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 42 | FuriStatus furi_mutex_acquire(FuriMutex* instance, uint32_t timeout); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:706:44: error: passing argument 1 of 'furi_mutex_release' from incompatible pointer type [-Werror=incompatible-pointer-types] 706 | furi_mutex_release(instance->mutex); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:50:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 50 | FuriStatus furi_mutex_release(FuriMutex* instance); | ~~~~~~~~~~~^~~~~~~~ /home/runner/work/_temp/app/code/qrcode_app.c:790:40: error: passing argument 1 of 'furi_mutex_release' from incompatible pointer type [-Werror=incompatible-pointer-types] 790 | furi_mutex_release(instance->mutex); | ~~~~~~~~^~~~~~~ | | | FuriMutex ** /home/runner/.ufbt/current/sdk_headers/f7_sdk/furi/core/mutex.h:50:42: note: expected 'FuriMutex *' but argument is of type 'FuriMutex **' 50 | FuriStatus furi_mutex_release(FuriMutex* instance); | ~~~~~~~~~~~^~~~~~~~ cc1: all warnings being treated as errors scons: *** [/home/runner/.ufbt/build/qrcode/qrcode_app.o] Error 1 More logs: https://github.com/flipperdevices/flipper-application-catalog/actions/runs/9550864221