$ export CC=clang CXX=clang++
$ cmake -G Ninja -B _build
$ cmake --build _build
[...]
In file included from src/core/PortalManager.cpp:1:
In file included from src/core/PortalManager.hpp:8:
In file included from src/core/../portals/Screencopy.hpp:6:
In file included from src/core/../portals/../shared/ScreencopyShared.hpp:17:
In file included from src/core/../portals/../shared/../includes.hpp:3:
In file included from /usr/include/hyprutils/memory/WeakPtr.hpp:3:
/usr/include/hyprutils/memory/./SharedPtr.hpp:291:42: error: no matching constructor for initialization of 'CCZwlrScreencopyManagerV1'
291 | return CSharedPointer<U>(new U(std::forward<Args>(args)...));
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~
src/core/PortalManager.cpp:57:13: note: in instantiation of function template specialization 'Hyprutils::Memory::makeShared<CCZwlrScreencopyManagerV1, void *>' requested here
57 | makeShared<CCZwlrScreencopyManagerV1>(wl_registry_bind((wl_registry*)m_sWaylandConnection.registry->resource(), name, &zwlr_screencopy_manager_v1_interface, version)));
| ^
protocols/wlr-screencopy-unstable-v1.hpp:70:7: note: candidate constructor (the implicit copy constructor) not viable: cannot convert argument of incomplete type 'void *' to 'const CCZwlrScreencopyManagerV1' for 1st argument
70 | class CCZwlrScreencopyManagerV1 {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
protocols/wlr-screencopy-unstable-v1.hpp:72:5: note: candidate constructor not viable: cannot convert argument of incomplete type 'void *' to 'wl_resource *' (aka 'wl_proxy *') for 1st argument
72 | CCZwlrScreencopyManagerV1(wl_resource*);
| ^ ~~~~~~~~~~~~
Likely regressed by #260